qt学习笔记001 2015/6/15
2015-06-15 16:25
337 查看
一、 QT入门
1.图形化用户界面
(1)GUI -Graphical User Interface (2)Hello Qt
#include <QApplication> #include <QLabel> int main(int argc,char *argv[]) { QApplication app(argc,argv); QLabel *label = new QLabel("Hello Qt!"); label->show(); return app.exec(); }
1.Qt中任意窗口部件都可以用作窗口,在本例中,用窗口部件QLabel作为应程序的窗口。 2.在创建窗口部件的时候,标签通常都是隐藏的,这就允许我们可以先对其进行设置然后在显示它们,从而避免了窗口部件的闪烁现象。 3.return app.exec()使程序进入事件循环状态,等待用户的动作,如单击,用户的动作会让可以产生响应的程序生成一些事件(event,也称消息)。 4.本例存在内存泄漏,不过很小,操作系统可以自动回收。
2.建立连接(信号和槽)
#include <QApplication> #include <QPushButton> int main(int argc,char *argv[]) { QApplication app(argc,argv); QPushButton *button = new QPushButton("Quit"); QObject::connect(button,SIGNAL(clicked()), &app,SLOT(quit())); button->show(); return app.exec(); }
1.connect 将信号发出者button的单击信号连接到信号接收者app的退出槽函数上,所以单击Quit按钮程序会退出。
3.窗口部件的布局
#include <QApplication> #include <QHBoxLayout>//布局管理器类 #include <QSlider> #include <QSpinBox> int main(int argc,char *argv[]) { QApplication app(argc,argv); QWidget *mainWindow = new QWidget; mainWindow->setWindowTitle("Enter Your Age"); QSpinBox *spinBox = new QSpinBox; QSlider *slider = new QSlider(Qt::Horizontal); spinBox->setRange(0,130); slider->setRange(0,130); QObject::connect(spinBox,SIGNAL(valueChanged(int)), slider,SLOT(setValue(int))); QObject::connect(slider,SIGNAL(valueChanged(int)), spinBox,SLOT(setValue(int))); spinBox->setValue(35); QHBoxLayout *layout = new QHBoxLayout; layout->addWidget(spinBox); layout->addWidget(slider); mainWindow->setLayout(layout); mainWindow->show(); return app.exec(); }
布局管理器类(设置其所负责的窗口部件的尺寸大小和位置):
QHBoxLayout 在水平方向上排列窗口部件
QVBoxLayout 在竖直方向上排列窗口部件
QGridLayout 把各个窗口部件排列在一个网格中
mainWindow->setLayout(layout);函数会在窗口上安装该布局管理器。
通常顺序:先声明所需的窗口部件,然后再设置它所应具备的属性,再把这些窗口部件添加到布局中,布局会自动设置它们的大小和位置。
相关文章推荐
- vs2013下qt工程设置exe图标
- tiny4412 tslib ts_test显示界面,但触摸无反应,运行qt4命令触摸有反应
- QT QTableWidget不可编辑
- windows下 qt5&vs2010 在qtCreator下中文乱码
- win下使用PyQt的Phonon播放失败
- Mac Windows Qt5.4.x加载QMYSQL出错的原因
- QtPropertyBrowser 下载地址
- 在vs2013+qt中添加控制台
- Qt多线程
- QT相对路径显示图片
- Qt +vs发布
- Qt5.2连接SQLServer2008
- QT全局热键
- QT中PRO文件写法的详细介绍
- QT使用的积累(2015年7月3日更新)
- Qt之自定义插件(for Qt Designer)
- QT TableWidget应用笔记
- Qt Creator键盘快捷键速查
- 将Qt 动态链接生成的exe及依赖dll打包方法
- 给QT 程序的EXE文件添加图标