问题
我有wxGrid
很多行(> 200)放在一个wxFlexGridSizer
. 问题是我在网格下方的按钮消失了。使用比例设置的wxBoxSizer
作品也是如此。
结果应该看起来像 wxBoxSizer 解决方案。有没有办法wxFlexGridSizer
在这种情况下使用?
wxBoxSizer(工作)
wxGrid *grid = new wxGrid(this, wxID_ANY);
grid->CreateGrid(0, 2);
grid->SetDefaultRowSize(20);
grid->AppendRows(200);
wxButton *button = new wxButton(this, wxID_ANY, "button");
wxBoxSizer *bsMain = new wxBoxSizer(wxHORIZONTAL);
bsMain->Add(grid, 1, wxALL, 5);
bsMain->Add(button, 0, wxALL, 5);
SetSizer(bsMain);
wxGridSizer(不工作)
wxGrid *grid = new wxGrid(this, wxID_ANY);
grid->CreateGrid(0, 2);
grid->SetDefaultRowSize(20);
grid->AppendRows(200);
wxButton *button = new wxButton(this, wxID_ANY, "button");
wxFlexGridSizer *fgsMain = new wxFlexGridSizer(1, 0, 0);
fgsMain->Add(grid, 1, wxALL, 5);
fgsMain->Add(button, 0, wxALL, 5);
fgsMain->AddGrowableRow(0);
fgsMain->AddGrowableCol(0);
SetSizer(fgsMain);
我尝试AddGrowableRow
用于两行,比例设置,wxEXPAND
标志。
这里有一个类似的问题,但解决方案是一种解决方法:
在对话框 (wxDialog) 中拟合大网格 (wxGrid)
(截图是用 制作的wxFormBuilder v3.8.1
)