- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我的主窗体上有一个名为 pushButton_Tar1ex
的按钮,上面有一些文本。我的主窗体上有另一个按钮,名为 pushButton_RenameTargets
。
当我按下 pushButton_RenameTargets
时,执行以下代码:
void MainWindow::on_pushButton_RenameTargets_clicked()
{
RenameTargets renametargets;
renametargets.target1NameCurrent = ui->pushButton_Tar1ex->text();
renametargets.setModal(true);
renametargets.exec();
}
所以我的第二个窗口叫做RenameTargets
,函数中的第一行代码创建了一个对象renametargets
。然后我设置 renametargets.target1NameCurrent = ui->pushButton_Tar1ex->text();
target1NameCurrent
在 public: renametargets.h 的部分。然后在 RenameTargets 中,我通过以下方式将标签设置为按钮文本:
RenameTargets::RenameTargets(QWidget *parent) :
QDialog(parent),
ui(new Ui::RenameTargets)
{
ui->setupUi(this);
ui->label_currentNameTarget1->setText(target1NameCurrent);
}
但标签 label_currentNameTarget1
中什么也没有出现。
我已经运行了一些 qDebug 东西,当 RenameTargets renametargets;
运行时,当我按下按钮时,它会运行 RenameTargets ui(new Ui::RenameTargets)
声明 renametargets.target1NameCurrent = ui->pushButton_Tar1ex->text();
之前的部分。
我做错了什么?任何帮助,将不胜感激。
最佳答案
您在构造对象后设置了renametargets.target1NameCurrent
成员变量renametargets
...这就是问题所在,因为您在构造函数中使用了target1NameCurrent
设置标签。
一种解决方案是通过构造函数传递 target1NameCurrent
。
void MainWindow::on_pushButton_RenameTargets_clicked()
{
RenameTargets renametargets(this, ui->pushButton_Tar1ex->text());
renametargets.setModal(true);
renametargets.exec();
}
重命名目标.cpp
RenameTargets::RenameTargets(QWidget *parent, const QString & target1NameCurrent):
QDialog(parent),
ui(new Ui::RenameTargets),
target1NameCurrent(target1NameCurrent)
{
ui->setupUi(this);
ui->label_currentNameTarget1->setText(target1NameCurrent);
}
重命名目标.h
class RenameTargets{
public:
RenameTargets(QWidget *parent, const QString & target1NameCurrent);
};
此外,您可以在构建renametargets
并初始化renametargets.target1NameCurrent
之后,在RenameTargets
的另一个函数中初始化label_currentNameTarget1
>.
关于c++ - 如何在 Qt C++ 中将变量从 MainWindow 传递到 SecondWindow,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40796707/
我的主窗体上有一个名为 pushButton_Tar1ex 的按钮,上面有一些文本。我的主窗体上有另一个按钮,名为 pushButton_RenameTargets。 当我按下 pushButton_
我是一名优秀的程序员,十分优秀!