我正在用C++在QT做一个大学项目。我基本上都完成了,但我有点想结束一场繁荣!在游戏结束时,你到达最后一个房间,按下控制面板,就会出现一个小键盘(这是一个创建为QWidget的.ui布局(——访问代码是在之前的房间中随机生成的4位数。
无论如何,我想用键盘弹出QWidget,让用户按下4个按钮——每个按钮都会返回一个QString——然后按下确认按钮。若匹配,游戏结束。若并没有,返回房间。
我只是不知道如何调用小部件!API并没有真正的帮助,因为我看不到将.ui表单分配给QWidget对象。
.ui
文件是一个资源文件。如果您的设置没有自动为您执行此操作,则必须使用uic
工具将.ui
文件转换为c++源代码。
foo.ui -> ui_foo.h
这个头包含一个创建小部件的类,并且一旦创建了每个成员,就让成员访问它们。
class Ui_Foo {
setupUi(QWidget *) { ...
}
}
namespace Ui {
class Foo: public Ui_Foo {};
} // namespace Ui
Ui::Foo
的一个实例被放置在FooWidget
中
// FooWidget.h
//
class FooWidget
: public QWidget {
FooWidget(QWidget *);
Ui::Foo mUi;
}
并且它的setupUi
在FooWidget
的构造函数中被调用
// FooWidget.cpp
//
FooWidget::FooWidget(QWidget *parent)
: QWidget(parent)
{
mUi.setupUi(this);
}
.ui表单是小部件。只需调用show((即可。