【发布时间】:2019-08-02 11:35:52
【问题描述】:
我的程序应该:
- 从 QLineEdits 收集一些输入;
- 将其转换为 QStrings;
- 将其添加到一些恒定的 QStrings 中;
- 单击按钮时在 QTextEdit 中输出全部内容。
以下是该程序的简化模型。可以编译;我没有错误;但是,它不能满足我的需要。它只是无法输出,我真的不知道为什么。我一直在努力让它没有错误,现在我已经没有想法了。有人可以帮我吗?
#include <QtGui>
#include <QtCore>
class MyObject : public QObject
{
Q_OBJECT
public:
QTextEdit text;
QString c;
public slots:
void onClicked() {
text.setText(c);
}
};
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
QWidget mw;
mw.setWindowTitle("Main Window");
mw.resize(400, 400);
mw.show();
QLabel label ("Enter something:", &mw);
label.setAlignment(Qt::AlignHCenter);
label.show();
QLineEdit line (&mw);
line.show();
QString a = line.text();
QString b = "This line is to be added";
QString c = a+b;
QTextEdit text (&mw);
text.show();
QPushButton btn ("Convert", &mw);
MyObject obj;
QObject::connect(
&btn,
SIGNAL(clicked()),
&obj,
SLOT(onClicked()));
btn.show();
QVBoxLayout layout_mw;
layout_mw.addWidget(&label);
layout_mw.addWidget(&line);
layout_mw.addWidget(&btn);
layout_mw.addWidget(&text);
mw.setLayout(&layout_mw);
return app.exec();
}
#include "sample.moc"
【问题讨论】: