非常に簡単なグリッド レイアウトに QPushButton を挿入しようとしていますが、事前に番号がわかりません。
ここに私が持っているものがあります:
testapp.cpp
#include "testapp.h"
testApp::testApp(QWidget *parent, Qt::WFlags flags)
: QMainWindow(parent, flags)
{
ui.setupUi(this);
for (int i = 0; i < 4; i++)
{
for (int j = 0; j < 4; j++)
{
QPushButton* panelButton = new QPushButton();
panelButton->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
ui.PanelButtonGridLayout->addWidget(panelButton,i,j);
}
}
}
testApp::~testApp()
{
}
main.cpp
#include <QtGui/QApplication>
#include "testapp.h"
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
testApp w;
w.show();
return app.exec();
}
したがって、オブジェクトは現在のループの最後に削除されるため、これが機能しないことはわかっています。
QPushButton の QList (たとえば) をメインに作成し、それを testapp クラスに渡すことを考えましたが、それが良い解決策かどうかはわかりません。もっと良い方法があるかもしれません。
編集: 何らかの理由で、コンパイルされていませんでした。今です。それが来ると嫌です。