Чтобы создать приложение wxWidgets, нужно создать наследника класса wxApp и переопределить метод wxApp::OnInit.
В приложении должен быть (фрейм) верхнего уровня: wxFrame или wxDialog. Каждый фрейм может содержать один или более экземпляр классов контролов, таких как wxPanel, wxSplitterWindows и других контролов и окон.
Фрейм может содержать wxMenuBar, wxToolBar, wxStatusBar, и wxIcon (для случая, когда фрейм с иконкой).
Контрол wxPanel используется для размещения контролов (классов-наследников от wxControl), которые используются для взаимодействия с пользователем. Примеры таких контролов: wxButton, wxCheckBox, wxChoice, wxListBox, wxRadioBox, и wxSlider.
Экземпляры wxDialog также могут быть использованы для размещения контролов, диалоги хороши тем, что не требуют создания отдельных окон.
Вместо создания диалогового окна с последующим наполнением его элементами, возможно выбрать один из удобных готовых классов диалогов: например, wxMessageDialog и wxFileDialog.
Вы никогда не рисуете прямо в окне - вы используете контекст устройства (DC). wxDC является предком wxClientDC , wxPaintDC , wxMemoryDC , wxPostScriptDC , wxMemoryDC , wxMetafileDC и wxPrinterDC. Если ваши функции рисования имеют wxDC в качестве параметра, вы можете передать любой из этих контролов в функцию и, таким образом, использовать один и тот же код для рисования на нескольких разных устройствах. Вы можете рисовать, используя функции - члены класса wxDC, такие как wxDC :: DrawLine и wxDC :: DrawText . Управлять цветом окна (wxColour), кистями (wxBrush) и перьями (wxPen).
Для перехвата событий, добавляем макро wxDECLARE_EVENT_TABLE в объявление класса окна, и помещаем блок wxBEGIN_EVENT_TABLE ... wxEND_EVENT_TABLE в файл реализации. Внутри блока, между этими макросами, добавляем макрос события, которые сопоставляет событие (например, клик мышью) с функцией-членом. Эти макросы могут переопределять предопределенные обработчики событий, такие как wxKeyEvent и wxMouseEvent.
Большинство современных приложений имеют встроенную оперативную гипертекстовую справочную систему, чтобы сделать такое, нужно использовать wxHelp и класс wxHelpController для управления wxHelp.
GUI - приложения - это не только волшебство графики. Понадобятся списки, хэш-таблицы, для этого есть wxList и wxHashMap. Также понадобятся платформенно - независимые средства для работы с файлами и каталогами; возможно, будет удобно искать и хранить списки файлов и путей к ним с помощью wxPathList. Есть множество Различных методов для взаимодействия с операционной системой и других функций.
GUI - приложения - это не только волшебство графики. Понадобятся списки, хэш-таблицы, для этого есть wxList и wxHashMap. Также понадобятся платформенно - независимые средства для работы с файлами и каталогами; возможно, будет удобно искать и хранить списки файлов и путей к ним с помощью wxPathList. Есть множество Различных методов для взаимодействия с операционной системой и других функций.
Комментариев нет:
Отправить комментарий