Qt入门

Posted pingfandfy

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Qt入门相关的知识,希望对你有一定的参考价值。

 1 #include <qapplication.h>
 2 #include <qlabel.h>
 3 
 4 int main(int argc,char *argv[])
 5 {
 6     QApplication app(argc,argv);
 7     QLabel *label = new QLabel("Hello Qt");
 8     label->show();
 9 
10     return app.exec(); 
11 }

  QLabel窗口部件,窗口部件是用户界面中的一个可视化元素。应用程序的窗口通常就是一个包含了QMenuBar、QToolBar、QStatusBar以及一些其它窗口部件。绝大多数应用程序都会使用一个QMainWindow或者一个QDialog来作为他的窗口,但是Qt更加灵活,以至于任意窗口都可以用作窗口。

  app.exec()将应用程序的控制权传递给Qt。此时,程序会进入时间循环状态,这是一种等待模式,程序会等候用户的动作。例如鼠标单击和按键等操作。用户的动作会让可以产生想用的程序生成一些时间。这的响应通常就是执行一个或者多个函数。

  在命令提示符下,进入hello目录,输入如下命令,生成一个与平台无关的项目文件hello.pro:

  qmake -project

  然后,输入如下命令,从这个项目文件生成一个与平台相关的makefile文件:

  qmake hello.pro

 

1.2 建立连接

  Qt窗口部件通过发送信号(signal)来表明一个用户动作已经发生了或者一个状态已经改变了。例如,当用户单击QPushButton时,该按钮会发射一个clicked信号。信号可以与函数项链,以便在发射信号是,槽可以得到自动执行。

 

1.3 窗口部件的布局

布局来管理窗口部件的几何形状,说明如何利用信号和槽来同步窗口部件。

 1 #include <qapplication.h>
 2 #include <qspinbox.h>
 3 #include <qslider.h>
 4 #include <qhboxlayout.h>
 5 
 6 int main(int argc,char *argv[])
 7 {
 8     QApplication app(argc,argv);
 9     QWidget *widget = new QWidget();
10       
11     widget->setWindowText("Enter Your Age");
12     QSpinBox *spinbox = new QSpinBox();
13     QSlider *slider = new QSlider(Qt::Horizontal);
14     spinbox->setRange(0,130);
15     slider->setRange(0,130);
16     
17     QObject::connect(spinbox,SIGNAL(valueChanged(int)),&app,SLOT(setValue(int)));
18     QObject::connect(slider,SIGNAL(valueChanged(int)),&app,SLOT(setValue(int)));
19     spinbox->setValue(35);
20     QHBoxLayout *hlayout = new QHBoxLayout();
21     hlayout->addWidget(spinbox);
22     hlayout->addWidget(slider);
23     window->setLayout(layout);
24 
25     window->show();
26     return app.exec();

 

QHBoxLayout:在水平方向上排列窗口部件,从左到右。

QVBoxLayout:在竖直方向上排列窗口部件,从上到下。

QGridLayout:把个个窗口部件排列在一个网格中。

QWidget::setLayout()函数调用会在窗口上安装该布局管理器。

 

以上是关于Qt入门的主要内容,如果未能解决你的问题,请参考以下文章

推荐net开发cad入门阅读代码片段

Qt高级——QtDBus快速入门

一Qt初尝试,做一个QT计算器《QT 入门到实战》

一Qt初尝试,做一个QT计算器《QT 入门到实战》

一Qt初尝试,做一个QT计算器《QT 入门到实战》

一Qt初尝试,做一个QT计算器《QT 入门到实战》