Qt C++,点击 QPushButton 时动态执行的操作
Qt C++, action on clicking QPushButton made dynamically
在我的一个窗口中,我制作了一个按钮,负责创建按钮的动态数组。制作完成后,我无法使"anul"按钮关闭窗口这是代码
QWidget *centralWidget = new QWidget;
int licznik=1;
QString licz;
QString kolumny = ui->lineEdit->text();
QString wiersze = ui->lineEdit_2->text();
QPushButton *button[wiersze.toInt()][kolumny.toInt()];
QGridLayout *controlsLayout = new QGridLayout;
for(int i=0;i<wiersze.toInt();i++)
{
for(int j=0;j<kolumny.toInt();j++)
{
licz = QString::number(licznik);
licznik++;
button[i][j] = new QPushButton(licz);
button[i][j]->setCheckable(1);
controlsLayout->addWidget(button[i][j], i, j);
}
}
QPushButton *okej = new QPushButton("Zatwierdź");
QPushButton *anul = new QPushButton("Anuluj");
if(anul->isDown() == true)
this->close();
controlsLayout->addWidget(okej, wiersze.toInt(), 0);
controlsLayout->addWidget(anul, wiersze.toInt(), 1);
controlsLayout->setHorizontalSpacing(0);
controlsLayout->setVerticalSpacing(0);
centralWidget->setLayout(controlsLayout);
setCentralWidget(centralWidget);
我还尝试用centralWidget->close()更改this->close()
此代码仅执行一次。
if(anul->isDown() == true)
this->close();
你想要的是将按钮的clicked()
信号连接到一个功能(插槽)
connect(anul, SIGNAL(clicked()), this,SLOT(close()))
相关文章:
- 以下代码执行哪种内存分配(动态或静态)?
- 释放动态分配的内存时是否需要执行此额外步骤
- 如果包含映射的静态库与可执行文件和动态库链接,静态映射(变量)是否会被多次释放?
- 从 C 可执行文件加载动态库时收到错误C++"undefined symbol"
- 调用函数一次用于动态链接库,一次从可执行文件调用函数
- 自上而下的动态规划与递归朴素解决方案.检查运行时执行
- 如果我在 Linux 上更改C++动态共享库,而我的可执行程序在其上使用,会发生什么
- 动态控制C++的执行策略类型
- 在动态加载的位置无关的可执行文件中分离错误
- C++模板的对象代码是否在可执行文件和动态库中重复?
- 为什么在 C++ 执行删除操作后仍可以访问释放的动态分配的内存
- 动态执行的 ARM ASM 系统调用,可从C++重新定位
- 如何动态执行具有任意参数类型的函数指针
- LDD可执行OUPUT中没有动态加载库
- 如何在C 中创建动态数组,该数组将在执行时决定其大小
- 为什么泄漏内存比在动态数组上执行 delete[] 慢
- 当使用rpath时,C++可执行文件无法找到动态链接的共享库
- 将静态和动态库链接到同一个可执行文件会导致哪些问题
- Qt C++,点击 QPushButton 时动态执行的操作
- 在Windows 8 (c++或.net / c#)的WinRT上动态执行代码