有两个文件:
mainwindow.cpp
和editorplain.cpp
editorplain.cpp
是作为小部件的对话框。
问题:将文本数据发送到另一个对话框上的标签。
mainwidnow.cpp
从菜单触发的操作调用一个新对话框:
er
将从主窗口返回字符串。
void MainWindow::on_actionRoot_files_triggered()
{
QString er = ui->selected_filename->text();
Editorplain editorplainwidget;
// HERE IS WHAT I WANT SEND A DATA TO ANOTHER DIALOG `editorplain`
editorplainwidget.exec();
}
打开对话框时,我想从字符串中获取数据er
:
Editorplain::setData(myType myData)
{
ui->label_2->setText(myData.textForEdit);
}
让我们解释一下我的问题。在mywindow
我有一个字符串er
,它返回一些字符串作为结果。这er
应该在对话框中发送editorplain
并设置为标签,例如:ui->label->setText(er)
。标签是 QLabel 制作的QDialog
。
Mainwindow.h
:
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
namespace Ui { class MainWindow; }
class MainWindow : public QMainWindow {
Q_OBJECT
public:
explicit MainWindow(QWidget *parent = 0);
~MainWindow();
private slots:
void on_actionOpen_triggered();
void on_actionExit_triggered();
void on_actionRoot_files_triggered();
private:
Ui::MainWindow *ui;
};
#endif // MAINWINDOW_H
editorplain.cpp
文件:
#include "editorplain.h"
#include "ui_editorplain.h"
#include "mainwindow.h"
Editorplain::Editorplain(QWidget *parent) :
QDialog(parent),
ui(new Ui::Editorplain)
{
ui->setupUi(this);
// SHOULD PASS ON THIS CONTRUCTOR?
}
Editorplain::~Editorplain()
{
delete ui;
}
Editorplain::setData(myType myData)
{
ui->label_2->setText(myData.textForEdit);
}