問題
多くwxGrid
の行 (>200) が 内に配置されていwxFlexGridSizer
ます。問題は、グリッドの下のボタンが消えることです。プロポーション設定wxBoxSizer
を使った作品も同様です。
結果はwxBoxSizer ソリューションのようになります。wxFlexGridSizer
このような状況でa を使用する方法はありますか?
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
)