自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Qt教程 調(diào)用退出 (2)

移動開發(fā)
這個教程介紹了使用Qt工具包進(jìn)行圖形用戶界面編程。它沒有包括所有的東西:強(qiáng)調(diào)的是教授一種圖形用戶界面編程的編程思想,并且介紹Qt的特征也是必需的。一些通常情況下使用的特征在這個教程里沒有用到。

你已經(jīng)在***章中創(chuàng)建了一個窗口,我們現(xiàn)在使這個應(yīng)用程序在用戶讓它退出的時候退出。

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

解說:

  1. #include <qfont.h> 

因?yàn)檫@個程序使用了QFont,所以它需要包含qfont.h。Qt的字體提取和X中提供的可怕的字體提取大為不同,字體的載入和使用都已經(jīng)被高度優(yōu)化了。

  1. QPushButton quit( "Quit", 0 ); 

這時,按鈕顯示“Quit”,確切的說這就是當(dāng)用戶點(diǎn)擊這個按鈕時程序所要做的。這不是一個巧合。因?yàn)檫@個按鈕是一個頂層窗口,我們還是把0作為它的父對象。

  1. quit.resize( 75, 30 ); 

我們給這個按鈕選擇了另外一個大小,因?yàn)檫@個文本比“Hello world!”小一些。我們也可以使用QFontMetrics來設(shè)置正確的大小。

  1. quit.setFont( QFont( "Times", 18, QFont::Bold ) ); 

這里我們給這個按鈕選擇了一個新字體,Times字體中的18點(diǎn)加粗字體。注意在這里我們調(diào)用了這個字體。

你也可以改變整個應(yīng)用程序的默認(rèn)字體(使用QApplication::setFont())。

  1. QObject::connect( &quit, SIGNAL(clicked()), &a, SLOT(quit()) ); 

connect也許是Qt中最重要的特征了。注意connect()是QObject中的一個靜態(tài)函數(shù)。不要把這個函數(shù)和socket庫中的connect()搞混了。

這一行在兩個Qt對象(直接或間接繼承QObject對象的對象)中建立了一種單向的連接。每一個Qt對象都有signals(發(fā)送消息)和slots(接收消息)。所有窗口部件都是Qt對象。它們繼承QWidget,而QWidget繼承QObject。

這里quit的clicked()信號和a的quit()槽連接起來了,所以當(dāng)這個按鈕被按下的時候,這個程序就退出了。

信號和槽文檔詳細(xì)描述了這一主題。

行為

當(dāng)你運(yùn)行這個程序的時候,你會看到這個窗口比***章中的那個小一些,并且被一個更小的按鈕充滿。

【編輯推薦】

Qt Symbian SDK 安裝

用Qt實(shí)現(xiàn)類似QQ截圖的工具

QML教程:Qtmediahub項(xiàng)目概述

開源軟件是基于JVM 平臺之Qt移植QtJambi

Qt的未來將持續(xù)炙手可熱 會比諾基亞更光明

責(zé)任編輯:zhaolei 來源: 互聯(lián)網(wǎng)
相關(guān)推薦

2011-06-27 16:37:08

Qt Designer

2011-07-04 11:21:59

QT Designer

2011-06-27 16:07:49

Qt Designer

2011-06-24 10:54:34

Qt Mysql

2011-06-08 15:06:09

Qt 教程

2011-08-30 15:32:08

QtQuickQML

2011-06-08 14:39:06

Qt 教程

2011-06-28 13:12:07

Qt 調(diào)用 DLL DLL

2011-06-24 09:13:30

QT SDL

2011-09-07 16:28:46

QT WidgetQWidget

2014-08-26 11:46:46

QtAndroid實(shí)例教程

2011-09-06 10:36:10

QT平臺

2011-06-28 17:13:46

Qt Designer UI

2011-06-24 09:39:05

2011-06-08 15:14:46

Qt 教程

2011-06-17 13:18:17

Qt 文件

2011-06-17 13:39:47

Qt 文件

2011-09-01 16:01:25

Qt插件

2011-06-24 17:05:07

QT QT 4.7.3 windows

2011-08-30 15:49:03

QtQuick
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號