[已解决]wxauimanager,关于子窗口尺寸的问题
如图所示。。我想让子窗不能进行宽度更改,但是左侧的两个窗口,可以进行长度的更改。。但是怎么也不成功。。。求教。。。wxFrame::OnInit中。。是这么做的
AuiMgr.AddPane(CreateNotebook(), wxAuiPaneInfo().Name(wxT(CLIENT_TILE_SELECT_WINDOW_NAME)).
Left().CaptionVisible(false).Layer(1).Position(1).PaneBorder(false));
wxTreeCtrl* pTreeC = CreateTreeCtrl();
AuiMgr.AddPane(pTreeC, wxAuiPaneInfo().
Name(wxT(CLIENT_MAP_TREE_WINDOW_NAME)).
Bottom().CaptionVisible(false).Layer(1).Position(1));
pPanel = new _2nDs_Panel(this, wxID_ANY, wxPoint(277,0), wxSize(1000,1000));
AuiMgr.AddPane(pPanel, wxAuiPaneInfo().
Name(wxT(CLIENT_DRAW_MAP_WINDOW_NAME)).
CaptionVisible(false).CenterPane());
int i, count;
wxAuiPaneInfoArray& all_panes = AuiMgr.GetAllPanes();
for (i = 0, count = all_panes.GetCount(); i < count; ++i)
if (!all_panes.Item(i).IsToolbar())
all_panes.Item(i).Hide();
AuiMgr.GetPane(wxT(CLIENT_TILE_SELECT_WINDOW_NAME)).Show().Left().Layer(0).Row(0).Position(0).MinSize(278,128);
AuiMgr.GetPane(wxT(CLIENT_MAP_TREE_WINDOW_NAME)).Show().Left().Layer(0).Row(0).Position(0).MinSize(278,128);
AuiMgr.GetPane(wxT(CLIENT_DRAW_MAP_WINDOW_NAME)).Show().Movable(0);
AuiMgr.Update(); 最后几行 我设置了MinSize是有用的。。。左侧的两个窗口宽度不能缩小了,但是我加上MaxSize之后。。。左侧的窗口仍然可以拉宽。。。 改了源代码,重新编译,解决了
页:
[1]