我开始将 Qt 用于 GUI,但是由于缺少一些功能,所以我在标头/库方面遇到了一些问题。
其中两个是:
<obj_name>.setModal(true);
<obj_name>.exec();
它们应该可以正常工作,就像我正在关注的视频中一样(6:30)。
因为我做了他们所做的,所以我的线索是他的版本和我的不一样。
我想知道我应该包含哪个标题。
这是我的代码:
void MainWindow::on_actionNew_Window_triggered()
{
MyDialog mDialog;
mDialog.setModal(true);
mDialog.exec();
}
即使:
#include <QDialog>
还是不行。它说:
C:\QtSDK\teste-build-desktop-Qt_4_8_1_for_Desktop_- MinGW _Qt_SDK__Debug..\teste\mainwindow.cpp:22:错误:'class MyDialog'没有名为'setModal'的成员。
mydialog.h
代码:
#ifndef MYDIALOG_H
#define MYDIALOG_H
#include <QMainWindow>
#include <QDialog>
namespace Ui {
class MyDialog;
}
class MyDialog : public QMainWindow
{
Q_OBJECT
public:
explicit MyDialog(QWidget *parent = 0);
~MyDialog();
private:
Ui::MyDialog *ui;
};
#endif // MYDIALOG_H
它包含在mainwindow.cpp
and中mydialog.cpp
(标题只是类)。