Im utilisant Qt creator 3.5.1 et créant un simple gui.Récupère les données de la boîte qcombo dans les données stringlist
Im se demandant comment obtenir des données de ComboBox qui est en QStringList est ici mon code:
#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);
}
}
quand im en utilisant ce code, il fonctionne:
sans utiliser QStringList:
ui->comboBox->addItem("Us");
ui->comboBox_2->addItem("Philippines");
Oh, merci beaucoup, ça fonctionne comme un charme. Que voulez-vous dire par l'initialiser par une fois avec "Japon" et n'a jamais changé, est-ce initialisation différente dans le constructeur que dans une fonction de slot privé? pourquoi s'initialise-t-il une fois dans le constructeur qui est "japan"? –
Je veux dire qu'après 'ui-> comboBox-> addItems (liste);' 'comboBox' a 4 éléments et son élément actuel est" Japon ". Ensuite, vous affectez cette valeur à str1. Donc, quand vous le vérifiez dans la fente, il a toujours la valeur "Japon", alors que la valeur actuelle de comboBox peut être différente. –
ok merci pour votre aide –