很多时候我们直接建立工程,然后各种界面什么的都已经被初始化好了的,不过在有些特殊时候,你或许需要写一个自己定义的窗口,那么接下来我们就来进行操作。
编程环境QT5
首先新建一个项目,命名为MyWidget,然后选择下一步,在这里我们选择QWidget,然后取消界面的选项。
现在一直下一步就可以了,接下来是添加代码:
widget.cpp的源码如下:
#include "widget.h"
#include <QPushButton>
#include <qapplication.h>
#include <QFont>
Widget::Widget(QWidget *parent)
: QWidget(parent)
{
setMinimumSize(200,120);
setMaximumSize(200,120);
QPushButton *quit=new QPushButton("quit",this);
quit->setGeometry(99,40,75,30);
quit->setFont(QFont("Times",18,QFont::Bold));
connect(quit,SIGNAL(clicked()),qApp, SLOT(quit));
}
Widget::~Widget()
{
}
通过运行,我们可以看到如下的效果:
一些函数不懂的话可以搜索一下,
setGeometry(99,40,75,30);
这个函数可能特殊一些,它的意思是跟随父组件,包括移动,后面坐标的意思是在父组件的相对位置99,40这个点开始画这个按钮,按钮的长度和宽度分别是75和30.
同样,你也可以利用这个函数来设置主窗口在屏幕的位置,可以在main.cpp添加如下代码:
#include "mywidget.h"
#include <QApplication>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
MyWidget w;
w.setGeometry(100,100,200,120);
w.show();
return a.exec();
}
这样你就可以在屏幕的指定位置绘制这个窗口了。