Qt: test! test!
2016-05-19 23:14
525 查看
1. my first QT
program.cpp
#include <QApplication>
#include <QHBoxLayout>
#include <QSlider>
#include <QSpinBox>
int main(int argc, char *argv[])
{
QApplication
app(argc, argv);
QWidget
*window = new
QWidget; //创建一个框体.
window->setWindowTitle("My first QT
program!!");
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(40); //滑动器设置初始值.
QHBoxLayout *layout = new
QHBoxLayout; //设置布局.
layout->addWidget(spinBox);
layout->addWidget(slider);
window->setLayout(layout);
window->show();
return
app.exec();
}
2. hello.cpp
#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();
}
3. button.cpp
#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();
}
connect(sender , SIGNAL( signal()
) , receiver , SLOT( slot() )
);
sender , receiver: 指向QObject的指针
signal , slot: 函数名.
例子:connect(button , SIGNAL( clicked() ) , &app ,
SLOT( quit() ) );
解释:当button按钮接收到点击信号就关闭app窗口.
一个信号可以连接多个槽.
多个信号可以连接同一个槽.
一个信号可以与另一个信号相连接.
连接可以被移除: disconnect(sender , SIGNAL() , receiver , SLOT()
);
(第四种情况会很少用.)
program.cpp
#include <QApplication>
#include <QHBoxLayout>
#include <QSlider>
#include <QSpinBox>
int main(int argc, char *argv[])
{
QApplication
app(argc, argv);
QWidget
*window = new
QWidget; //创建一个框体.
window->setWindowTitle("My first QT
program!!");
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(40); //滑动器设置初始值.
QHBoxLayout *layout = new
QHBoxLayout; //设置布局.
layout->addWidget(spinBox);
layout->addWidget(slider);
window->setLayout(layout);
window->show();
return
app.exec();
}
2. hello.cpp
#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();
}
3. button.cpp
#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();
}
connect(sender , SIGNAL( signal()
) , receiver , SLOT( slot() )
);
sender , receiver: 指向QObject的指针
signal , slot: 函数名.
例子:connect(button , SIGNAL( clicked() ) , &app ,
SLOT( quit() ) );
解释:当button按钮接收到点击信号就关闭app窗口.
一个信号可以连接多个槽.
多个信号可以连接同一个槽.
一个信号可以与另一个信号相连接.
连接可以被移除: disconnect(sender , SIGNAL() , receiver , SLOT()
);
(第四种情况会很少用.)
相关文章推荐
- QT类中keyPressEvent函数的重写
- 编译qt-arm版本的配置文件
- 嵌入式Qt开发环境搭建及移植到开发板----Qt学习笔记
- 什么是qt,QT Creator, QT SDK, QT Designer
- Qt Creator与Qt Designer有什么不一样?
- Windows下Qt连接MySql数据库
- 《PCL点云库学习&VS2010(X64)》Part 5 VTK6.2+VS2013+Qt5.5 测试VTK基于VS2013的Qt程序
- 嵌入式Qt开发环境搭建及移植到开发板----Qt学习笔记
- QT5.5.1 嵌入式平台 鼠标键盘不能热插拔问题解决(二)
- QT5.5.1 嵌入式平台 鼠标键盘不能热插拔问题解决(一)
- Qt创建数据库、插入内容
- Qt Creator 设置黑色风格
- qt QPrint
- 解决Qt5 Creator无法切换输入法(fcitx)
- QTP学习笔记(一):安装篇,解决QTP无法识别控件对象的问题
- QT-Creator+SDK+编译器+自定义配置
- Qt入门之信号与槽机制
- Qt5.5和5.4在opengl中setUpdateBehavior函数引起的问题
- QT工程转换为VS2013项目文件
- Qt快速入门系列教程