Фреймы в wxWidgets развернуть на весь экран достаточно
легко. Стоит только указать в конце функции его описания Maximize(true);
MyFrame::MyFrame(const
wxString &title) : wxFrame(NULL, wxID_ANY, title, wxDefaultPosition,
wxSize(200, 200) )
{
Maximize(true);
}
Также достаточно полезно пользоваться «стилями» фреймов. Здесь я приведу их описания, взятые с офф
сайта wxWidgets с некоторыми
комментариями.
wxDEFAULT_FRAME_STYLE:
Определяется, как wxMINIMIZE_BOX | wxMAXIMIZE_BOX | wxRESIZE_BORDER |
wxSYSTEM_MENU | wxCAPTION | wxCLOSE_BOX | wxCLIP_CHILDREN.
Стиль, который используется в
фреймах по-умолчанию.
wxICONIZE:
Отображает фрейм без
заголовка и без границ. В этом случае
можно указываь размер и положение на экране. Только для Windows.
wxCAPTION:
Показывает заголовок на фрейме.
wxMINIMIZE:
Идентично wxICONIZE. Только для Windows. Черт его знает зачем два одинаковых стиля.
wxMINIMIZE_BOX:
Показывает кнопку «свернуть».
wxMAXIMIZE:
Показывает кнопку
«развернуть».Только для Windows и GTK+.
wxCLOSE_BOX:
Показывает кнопку «закрыть»
wxSTAY_ON_TOP:
Тут все понятно. Поверх всех окон.
wxSYSTEM_MENU:
Добавляет системное меню, содержащее разные команды в
заголовке окна (закрыть, свернуть и т.д.).
wxRESIZE_BORDER:
Показывает изменяемые границы
окна.
wxFRAME_TOOL_WINDOW:
Не совсем понимаю что это =)
wxFRAME_NO_TASKBAR:
Создается обычный фрейм, но он не появляется в панеле задач под виндой и GTK+
И небольшой пример:
Что бы создать фрейм, у которого невозможно изменять размер
необходимо применить следующий стиль:
wxDEFAULT_FRAME_STYLE & ~(wxRESIZE_BORDER | wxMAXIMIZE_BOX)
MyFrame::MyFrame(const
wxString &title) :
wxFrame(NULL,
wxID_ANY, title, wxPoint(40, 40), wxSize(200, 200), wxDEFAULT_FRAME_STYLE &
~(wxRESIZE_BORDER | wxMAXIMIZE_BOX))
{
Centre(true);
}
Приобрести решетки по низкой цене в Киеве на www.fensters-rollets.kiev.ua
ОтветитьУдалить