私の Windows フォーム コードでは、デフォルトで ui を使用してグラフィカル要素を定義しています。しかし、次のように関数でそれらを変更したい:
問題は、デバッグ ツールが ui がこのスコープで宣言されていないことを教えてくれることです。
#include <QMessageBox>
#include <QFile>
#include <QTextStream>
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include "datawindow.h"
void getData(ui){
QFile inputFile("C:\\pepoles.txt");
if (inputFile.open(QIODevice::ReadOnly)){
QTextStream in(&inputFile);
while ( !in.atEnd() ){
QString line = in.readLine();
ui->listWidgetData->addItem(line);
}
}
else{
QMessageBox::critical(this, "Erreur", "Une erreur s'est produite :(");
}
inputFile.close();
}
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
getData(ui);
}
MainWindow::~MainWindow()
{
delete ui;
}
void MainWindow::on_actionNouvellesDonnees_triggered() {
w.show();
}