Qt教程 家庭价值 (3)

移动开发
这个教程介绍了使用Qt工具包进行图形用户界面编程。它没有包括所有的东西:强调的是教授一种图形用户界面编程的编程思想,并且介绍Qt的特征也是必需的。一些通常情况下使用的特征在这个教程里没有用到。

接着Qt教程第二章内容,这章我们将会保持这个程序的简单性,并且只使用一个单一的父窗口部件和一个独立的子窗口部件。

  1. #include <qapplication.h> 
  2. #include <qpushbutton.h> 
  3. #include <qfont.h> 
  4. #include <qvbox.h> 
  5. int main( int argc, char **argv )  
  6. {  
  7.     QApplication a( argc, argv );  
  8.     QVBox box;  
  9.     box.resize( 200, 120 );  
  10.     QPushButton quit( "Quit", &box );  
  11.     quit.setFont( QFont( "Times", 18, QFont::Bold ) );  
  12.     QObject::connect( &quit, SIGNAL(clicked()), &a, SLOT(quit()) );  
  13.     a.setMainWidget( &box );  
  14.     box.show();  
  15.     return a.exec();  

解说 :

  1. #include <qvbox.h> 

我们添加了一个头文件qvbox.h用来获得我们要使用的布局类。

  1. QVBox box; 

这里我们简单地创建了一个垂直的盒子容器。QVBox把它的子窗口部件排成一个垂直的行,一个在其它的上面,根据每一个子窗口部件的QWidget::sizePolicy()来安排空间。

  1. box.resize( 200, 120 ); 

我们它的高设置为120像素,宽为200像素。

  1. QPushButton quit( "Quit", &box ); 

子窗口部件产生了。

QPushButton通过一个文本(“text”)和一个父窗口部件(box)生成的。子窗口部件总是放在它的父窗口部件的最顶端。当它被显示的时候,它被父窗口部件的边界挡住了一部分。
父窗口部件,QVBox,自动地把这个子窗口部件添加到它的盒子中央。因为没有其它的东西被添加了,这个按钮就获得了父窗口部件的所有空间。

  1. box.show(); 

当父窗口部件被显示的时候,它会调用所有子窗口部件的显示函数(除非在这些子窗口部件中你已经明确地使用QWidget::hide())。

行为

这个按钮不再充满整个窗口部件。相反,它获得了一个“自然的”大小。这是因为现在的这个新的顶层窗口,使用了按钮的大小提示和大小变化策略来设置这个按钮的大小和位置。(请看QWidget::sizeHint()和QWidget::setSizePolicy()来获得关于这几个函数的更详细的信息。)

【编辑推荐】

详解Qt Lighthouse和Wayland

QML教程:Qt-Quick六大开源组件

Linux环境下的Qt添加OpenCV的配置

诺基亚与微软结盟 Qt的未来何去何从

开源软件是基于JVM 平台之Qt移植QtJambi

责任编辑:zhaolei 来源: 互联网
相关推荐

2011-07-04 17:26:00

Qt SQLite

2011-06-17 09:34:02

Qt 4.5.1 Sqlite 移植

2011-06-17 09:19:03

Qt 4.5.1 Sqlite 移植

2011-07-04 11:21:59

QT Designer

2011-06-22 10:12:08

Qt 线程

2011-08-30 15:32:08

QtQuickQML

2011-06-08 14:39:06

Qt 教程

2011-06-08 14:55:37

Qt 教程

2011-06-24 10:54:34

Qt Mysql

2011-06-27 16:07:49

Qt Designer

2011-09-06 10:36:10

QT平台

2011-06-27 16:37:08

Qt Designer

2014-08-26 11:46:46

QtAndroid实例教程

2011-06-24 09:13:30

QT SDL

2011-09-07 16:28:46

QT WidgetQWidget

2011-08-30 15:49:03

QtQuick

2011-06-24 17:05:07

QT QT 4.7.3 windows

2011-06-27 16:18:24

Qt Designer

2011-06-17 13:39:47

Qt 文件

2011-06-17 13:18:17

Qt 文件
点赞
收藏

51CTO技术栈公众号