首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > 移动开发 >

运用布局控件进行窗口布局(手机播放器连载系列3)

2013-04-02 
使用布局控件进行窗口布局(手机播放器连载系列3)对于一个平台无关的设计来说,要考虑同一个控件在不同的平

使用布局控件进行窗口布局(手机播放器连载系列3)

      对于一个平台无关的设计来说,要考虑同一个控件在不同的平台上可能有不同的外观和尺寸。这意味着使用绝对大小和位置来进行窗口布局几乎是行不通的。但是wxWidgets的布局控件,可以灵活的进行非常复杂的窗口布局。而目前wxWidgets总共支持五类布局控件,每一种布局控件或者用来实现一种特殊的布局方式,或者用来实现和布局相关的一种特殊的功能比如在某些控件周围围绕一个静态的文本框。

      控件都会有自己的最小大小、边界、对齐方式、伸缩因子(默认为0,如果为1则在窗口空间不够的情况下,缩小为原来的一半)

使用布局控件进行编程:

1、使用wxBoxSizer进行编程

#define ID_CHECKBOX 10031MyFrame::MyFrame(const wxString& title): wxFrame(NULL, wxID_ANY, wxT("Hello wxWidgets"), wxPoint(50,50), wxSize(800,600))  {// set icon for applicationSetIcon(wxIcon(mondrian_xpm));wxBoxSizer  *top_level = new wxBoxSizer(wxVERTICAL);wxStaticBox *static_bos = new wxStaticBox(this, wxID_ANY, wxT("General settings"));wxStaticBoxSizer *static_box_sizer = new wxStaticBoxSizer(static_bos, wxVERTICAL);top_level->Add(static_box_sizer, 0, wxALIGN_CENTER_HORIZONTAL | wxALL, 5);wxCheckBox *check_box = new wxCheckBox( this, ID_CHECKBOX, wxT("&Show splash screen"), wxDefaultPosition, wxDefaultSize);static_box_sizer->Add(check_box, 0, wxALIGN_LEFT | wxALL, 5);SetSizer(top_level);top_level->Fit(this);top_level->SetSizeHints(this);// Create a status bar just for funCreateStatusBar(1);SetStatusText(wxT("Welcome to wxWidgets!"));}

还有两种用Grid来布局的方式,对本人而言用处已经不算很大了。



热点排行