<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > Qt圖形編程基礎之:Qt/Embedded開(kāi)發(fā)入門(mén)

Qt圖形編程基礎之:Qt/Embedded開(kāi)發(fā)入門(mén)

作者: 時(shí)間:2013-09-13 來(lái)源:網(wǎng)絡(luò ) 收藏

本文引用地址:http://dyxdggzs.com/article/257103.htm

4.旁述

現在的應用主要使用旁述的方式去解釋用戶(hù)接口的用法。Qt提供了兩種旁述的方式,即“提示欄”和“這是什么”幫助按鈕。

n “提示欄”是小的,通常是黃色的矩形,當光標在窗體的某些位置游動(dòng)時(shí),它就會(huì )自動(dòng)地出現。它主要用于解釋工具欄按鈕,特別是那些缺少文字標簽說(shuō)明的工具欄按鈕的用途。下面就是如何設置一個(gè)“存盤(pán)”按鈕的提示代碼。

QToolTip::add(saveButton,Save);

當提示字符出現之后,還可以在狀態(tài)欄顯示更詳細的文字說(shuō)明。

對于一些沒(méi)有鼠標的設備(例如那些使用觸點(diǎn)輸入的設備),就不會(huì )出現鼠標的光標在窗體上進(jìn)行游動(dòng),這樣就不能激活提示欄。對于這些設備也許就需要使用“這是什么”幫助按鈕,或者使用一種狀態(tài)來(lái)表示輸入設備正在進(jìn)行游動(dòng),例如用按下或者握住的狀態(tài)來(lái)表示現在正在進(jìn)行游動(dòng)。

n “這是什么”幫助按鈕和提示欄有些相似,只不過(guò)前者是要用戶(hù)單擊它才會(huì )顯示旁述。在小屏幕設備上,要想單擊“這是什么”幫助按鈕,具體的方法是,在靠近應用的X窗口的關(guān)閉按鈕“x”附近你會(huì )看到一個(gè)“?”符號的小按鈕,這個(gè)按鈕就是“這是什么”的幫助按鈕。一般來(lái)說(shuō),“這是什么”幫助按鈕按下后要顯示的提示信息應該比提示欄要多一些。下面是設置一個(gè)存盤(pán)按鈕的“這是什么”文本提示信息的方法:

QWhatsThis::add(saveButton,Savethecurrentfile.);

QToolTip和QWhatsThis類(lèi)提供了可以通過(guò)重新實(shí)現來(lái)獲取更多特殊化行為的虛函數,比如根據鼠標在部件的位置來(lái)顯示不同的文本。

5.動(dòng)作

應用程序通常提供幾種不同的方式來(lái)執行特定的動(dòng)作。比如,許多應用程序通過(guò)菜單(Flie->Save)、工具欄(像一個(gè)軟盤(pán)的按鈕)和快捷鍵(Ctrl+S)來(lái)提供“Save”動(dòng)作。QAction類(lèi)封裝了“動(dòng)作”這個(gè)概念。它允許程序員在某個(gè)地方定義一個(gè)動(dòng)作。

下面的代碼實(shí)現了一個(gè)“Save”菜單項、一個(gè)“Save”工具欄按鈕和一個(gè)“Save”快捷鍵,并且均有旁述幫助:

QAction*saveAct=newQAction(Save,saveIcon,Save,CTRL+Key_S,this);

connect(saveAct,SIGNAL(activated()),this,SLOT(save()));

saveAct->setWhatsThis(Savesthecurrentfile.);

saveAct->addTo(fileMenu);

saveAct->addTo(toolbar);

為了避免重復,使用QAction可保證菜單項的狀態(tài)與工具欄保持同步,而工具提示能在需要的時(shí)候顯示。禁用一個(gè)動(dòng)作會(huì )禁用相應的菜單項和工具欄按鈕。類(lèi)似地,當用戶(hù)單擊切換型按鈕時(shí),相應的菜單項會(huì )因此被選中或不選。

12.2.6對話(huà)框設計

對話(huà)框的設計比較復雜,要使用布局管理自動(dòng)地設置窗體與別的窗體之間相對的尺寸和位置,這樣可以確保對話(huà)框能夠最好地利用屏幕上的可用空間,接著(zhù)還要使用Qt圖形設計器可視化設計工具建立對話(huà)框。下面就詳細講解具體的步驟。

1.布局

Qt的布局管理用于組織管理一個(gè)父窗體區域內的子窗體。它的特點(diǎn)是可以自動(dòng)設置子窗體的位置和大小,并可確定出一個(gè)頂級窗體的最小和缺省的尺寸,當窗體的字體或內容變化后,它可以重置一個(gè)窗體的布局。

使用布局管理,開(kāi)發(fā)者可以編寫(xiě)獨立于屏幕大小和方向之外的程序,從而不需要浪費代碼空間和重復編寫(xiě)代碼。對于一些國際化的應用程序,使用布局管理,可以確保按鈕和標簽在不同的語(yǔ)言環(huán)境下有足夠的空間顯示文本,不會(huì )造成部分文字被剪掉。

布局管理提供部分用戶(hù)接口組件,例如輸入法和任務(wù)欄變得更容易。我們可以通過(guò)一個(gè)例子說(shuō)明這一點(diǎn),當Qtopia的用戶(hù)輸入文字時(shí),輸入法會(huì )占用一定的文字空間,應用程序這時(shí)也會(huì )根據可用屏幕尺寸的變化調整自己。

Qtopia的布局管理示例如圖12.11所示。

linux操作系統文章專(zhuān)題:linux操作系統詳解(linux不再難懂)

linux相關(guān)文章:linux教程




評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>