うまくいけば、この質問は簡単です。私は実行時に私のGUIの特定の領域にいくつかのボタンを生成する必要があります。作成したいオブジェクトはチェックボックスです。ここではこれらのチェックボックスを作成するコードの一部です:Qt Creator MainWindowの特定のコンテナにオブジェクトを作成するにはどうすればよいですか?
void MainWindow::on_generateBoxes_clicked()
{
int x_dim = ui->xDim->value();
int y_dim = ui->yDim->value();
int z_dim = ui->zDim->value();
QVector<QCheckBox*> checkBoxVector;
for(int i = 0; i < x_dim; ++i){
for(int j = 0; j < y_dim; ++j){
checkBoxVector.append(new QCheckBox(ui->dim1));
checkBoxVector.last()->setGeometry(i * 20, j * 20, 20, 20);
}
}
}
私の質問は、私はこのアイデアを取るが、私はしたい特定の領域にこれらのチェックボックスを作成するにはどうすればよいのですか?エリアはdim1と呼ばれ、QTabWidgetのウィジェットです。
EDIT:その後、自分の位置がそのウィジェットからの相対であるようにあなたが親にMainWindow
にあるチェックボックスをしたくないコード
誰か他に提案がありますか? –
少なくとも1つは明らかに間違っています.QVectorにon_generateBoxes_clicked() のローカルのチェックボックスを作成します。メソッドが返った後、ベクターは破棄されます。 (ベクターにはポインタしか保持していないので、CheckBoxが破棄されるかどうかはわかりません) –
このdim1が表示されますか?たぶん、visible_とする必要がある色を試してみてください。そして、完全性のために、x_dimとy_dimの値がゼロでないことを確認します。それらをqDebugまたは何かに出力してください –