自学QT之自己写一个窗口
2015-12-10 00:00
253 查看
很多时候我们直接建立工程,然后各种界面什么的都已经被初始化好了的,不过在有些特殊时候,你或许需要写一个自己定义的窗口,那么接下来我们就来进行操作。
编程环境QT5
首先新建一个项目,命名为MyWidget,然后选择下一步,在这里我们选择QWidget,然后取消界面的选项。
![](http://static.oschina.net/uploads/img/201512/10191836_N1CX.jpg)
现在一直下一步就可以了,接下来是添加代码:
widget.cpp的源码如下:
![](http://static.oschina.net/uploads/img/201512/10191836_ArZx.jpg)
一些函数不懂的话可以搜索一下,
同样,你也可以利用这个函数来设置主窗口在屏幕的位置,可以在main.cpp添加如下代码:
这样你就可以在屏幕的指定位置绘制这个窗口了。
编程环境QT5
首先新建一个项目,命名为MyWidget,然后选择下一步,在这里我们选择QWidget,然后取消界面的选项。
![](http://static.oschina.net/uploads/img/201512/10191836_N1CX.jpg)
现在一直下一步就可以了,接下来是添加代码:
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() { }通过运行,我们可以看到如下的效果:
![](http://static.oschina.net/uploads/img/201512/10191836_ArZx.jpg)
一些函数不懂的话可以搜索一下,
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(); }
这样你就可以在屏幕的指定位置绘制这个窗口了。
相关文章推荐
- 自学QT之QT编程中QList类的removeAt方法记录
- 自学QT之QListIterator迭代器的示例
- 自学QT之托盘菜单
- 自学QT之实现一个用户信息窗口
- 自学QT之制作QQ界面
- 自学QT之停靠窗口
- 自学QT之简易音乐播放器基于QT5.5
- 自学QT之判断输入内容实现按钮可用或者不可用
- 自学QT之报错: name lookup of 'i' changed for ISO 'for' scoping
- 自学QT之键盘事件
- 自学QT之windeployqt工具的使用
- 自学QT之libpng warning: iCCP: known incorrect sRGB profile
- 自学QT之颜色选择对话框
- 自学QT之字体选择对话框
- 自学QT之标准文件对话框
- 自学QT之获取正确的文件名
- 自学QT之让label透明和隐藏标题栏
- 自学QT之实现QMessageBox的按钮中文显示
- 自学QT之QML实现响应鼠标和键盘事件
- 自学QT之启动画面