绝对定位以像素为单位指定每个小部件的位置和大小,小部件不会随着窗口的变化而变化。
一、layoutabsolute.h
#include <wx/wxprec.h>
#ifndef WX_PRECOMP
#include <wx/wx.h>
#endif // WX_PRECOMP
class LayoutAbsolute:public wxFrame
{
public:
LayoutAbsolute(const wxString& title);
};
二、layoutabsolute.cpp
#include "layoutabsolute.h"
LayoutAbsolute::LayoutAbsolute(const wxString& title)
:wxFrame(NULL,wxID_ANY,title,wxDefaultPosition,wxSize(280,180))
{
wxPanel *panel= new wxPanel;
panel->Create(this,wxID_ANY,wxDefaultPosition,wxSize(200,180));
wxMenuBar *mbMain = new wxMenuBar;
wxMenu *mnMain = new wxMenu;
mnMain->Append(wxID_EXIT,"Exit");
mbMain->Append(mnMain,"File");
this->SetMenuBar(mbMain);
wxTextCtrl *text = new wxTextCtrl;
text->Create(panel,wxID_ANY,"this is a normal text.\n"
,wxDefaultPosition,wxSize(200,100)
,wxTE_MULTILINE|wxTE_RICH);//rich在win32下有用
text->SetDefaultStyle(wxTextAttr(*wxRED));
text->AppendText("Red text\n");//红色文字
text->SetDefaultStyle(wxTextAttr(wxNullColour, *wxLIGHT_GREY));
text->AppendText("Red on grey text\n");//前景红色,背景灰色
text->SetDefaultStyle(wxTextAttr(*wxBLUE));
text->AppendText("Blue on grey text\n");//前景蓝色,背景灰色
this->Centre();
}