Каковы последствия создания компонентов графического интерфейса wxWidgets вне OnInit? - PullRequest
0 голосов
/ 07 января 2012

Обычно компоненты GUI создаются в OnInit-методе.Я заметил, что это на самом деле не нужно;вы можете создать wxFrame вне всего wxApp-объекта, и он все равно будет работать.

Есть ли серьезные последствия?

1 Ответ

0 голосов
/ 07 января 2012

Очевидно, вы можете создать wxFrame вне объекта wxApp, используя глобальный метод wxEntryStart.

:: wxEntryStart bool wxEntryStart (int & argc, wxChar ** argv)

ThisФункция может использоваться для выполнения инициализации wxWidgets, если вы не можете использовать код инициализации по умолчанию по любой причине.

Если функция возвращает true, инициализация прошла успешно, и глобальный объект wxApp wxTheApp был создан.Кроме того, wxEntryCleanup должен быть вызван впоследствии.Если функция возвращает false, произошла катастрофическая ошибка инициализации, и (по крайней мере, часть GUI) библиотека не может использоваться вообще.

Обратите внимание, что параметры argc и argv могут быть изменены этой функцией.

Включите файлы

Единственное последствие этого, по-видимому, заключается в том, что вы должны вызвать wxEntryCleanup ()

...