在Qt 4.8.5 32位和VS2010中,我正在尝试创建一个窗口,如QtDesigner的截图所示:
有人知道为什么会这样吗? 这是我的代码:
Future.value
答案 0 :(得分:0)
在QtDesigner的屏幕截图中,我看到您的用户界面适用于QWidget
,但您将其应用于QMainWindow
。这会导致问题,因为主窗口的处理与其他小部件不同。
我不知道如何更改UI文件的基类。也许最好的方法是创建一个新文件,选择主窗口模板,然后从旧文件中复制/粘贴内容。
另一种选择是拥有一个QWidget
,使用UI进行设置,并将其添加为主窗口的中央窗口小部件:
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
MainWindow(){
ui = new Ui::AView();
QWidget *wgt = new QWidget;
ui->setupUi(wgt);
this->setCentralWidget(wgt);
}
~MainWindow();
...
private:
Ui::AView* ui;
}
答案 1 :(得分:0)
试试这个:
class MainWindow : public QMainWindow, public Ui::AView
{
Q_OBJECT
public:
MainWindow(){
setupUi(this);
}
~MainWindow();
}