【发布时间】:2020-07-27 01:17:17
【问题描述】:
在我的 MainWindow 中,我有一个组合框和一个选择按钮。单击选择按钮时会打开一个新窗口。
我希望能够在包含组合框文本的 MainWindow 上创建一个 QString 变量,并将该 QString 传递给新窗口。新窗口将根据 QString 的内容(基于组合框的选择)执行不同的任务。
以下是我目前的代码...
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include "testwindow.h"
MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent)
, ui(new Ui::MainWindow)
{
ui->setupUi(this);
ui->cmboTestSelect->addItem("{Please Select a Test}");
ui->cmboTestSelect->addItem("Test 1");
ui->cmboTestSelect->addItem("Test 2");
ui->cmboTestSelect->addItem("Test 3");
ui->cmboTestSelect->addItem("Test 4");
}
MainWindow::~MainWindow()
{
delete ui;
}
void MainWindow::on_btnTestSelect_clicked()
{
QString str_TestSelect = ui->cmboTestSelect->currentText(); //stores "Test Name" in string
hide();
Testwindow = new testwindow(this);
Testwindow->show();
}
【问题讨论】:
-
你能修改
TestWindow的代码吗?最简单的方法是将参数添加到TestWindow.Show()或其构造函数。还建议使用枚举类而不是字符串。
标签: c++ qt user-interface