从字符串列表数据中的组合框获取数据
Get Data from qcombo box in stringlist data
我正在使用 Qt Creator 3.5.1 并创建一个简单的图形用户界面。
我想知道如何从 qstringlist 中的组合框获取数据这是我的代码:
#include "mainwindow.h"
#include "ui_mainwindow.h"
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
list=(QStringList()<<"Japan"<<"Korea"<<"Philippines"<<"Us");
ui->comboBox->addItems(list);
ui->comboBox_2->addItems(list);
str1 = ui->comboBox->currentText();
str2 = ui->comboBox_2->currentText();
}
MainWindow::~MainWindow()
{
delete ui;
}
void MainWindow::on_pushButton_clicked()
{
integer_value = ui->lineEdit->text().toInt();
if(str1 == "Us" && str2 == "Philippines")
{
answer = integer_value * 47.73;
result = result.number(answer);
ui->label->setText(result);
}
}
当我使用这段代码时它有效:
不使用 QStringList:
ui->comboBox->addItem("Us");
ui->comboBox_2->addItem("Philippines");
你初始化 str1 和 str2 一次(使用 "Japan"),它们从未改变(根据你的代码)。如果你想在按下按钮时获得当前的组合框文本,你需要在 on_pushButton_clicked()
槽中检查它。类似的东西:
void MainWindow::on_pushButton_clicked()
{
str1 = ui->comboBox->currentText();
str2 = ui->comboBox_2->currentText();
if(str1 == "Us" && str2 == "Philippines")
{
answer = integer_value * 47.73;
result = result.number(answer);
ui->label->setText(result);
}
}
我正在使用 Qt Creator 3.5.1 并创建一个简单的图形用户界面。
我想知道如何从 qstringlist 中的组合框获取数据这是我的代码:
#include "mainwindow.h"
#include "ui_mainwindow.h"
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
list=(QStringList()<<"Japan"<<"Korea"<<"Philippines"<<"Us");
ui->comboBox->addItems(list);
ui->comboBox_2->addItems(list);
str1 = ui->comboBox->currentText();
str2 = ui->comboBox_2->currentText();
}
MainWindow::~MainWindow()
{
delete ui;
}
void MainWindow::on_pushButton_clicked()
{
integer_value = ui->lineEdit->text().toInt();
if(str1 == "Us" && str2 == "Philippines")
{
answer = integer_value * 47.73;
result = result.number(answer);
ui->label->setText(result);
}
}
当我使用这段代码时它有效:
不使用 QStringList:
ui->comboBox->addItem("Us");
ui->comboBox_2->addItem("Philippines");
你初始化 str1 和 str2 一次(使用 "Japan"),它们从未改变(根据你的代码)。如果你想在按下按钮时获得当前的组合框文本,你需要在 on_pushButton_clicked()
槽中检查它。类似的东西:
void MainWindow::on_pushButton_clicked()
{
str1 = ui->comboBox->currentText();
str2 = ui->comboBox_2->currentText();
if(str1 == "Us" && str2 == "Philippines")
{
answer = integer_value * 47.73;
result = result.number(answer);
ui->label->setText(result);
}
}