版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
QAction類參考QAction類提供了一個(gè)可以同時(shí)出現(xiàn)在菜單和工具條上的抽象用戶界面操作。詳情請(qǐng)見……#include<qaction.h>InheritsQObject。InheritedbyQActionGroup。所有成員函數(shù)的列表。公有成員QAction(QObject*parent,constchar*name=0,booltoggle=FALSE)QAction(constQString&text,constQIconSet&icon,constQString&menuText,QKeySequenceaccel,QObject*parent,constchar*name=0,booltoggle=FALSE)QAction(constQString&text,constQString&menuText,QKeySequenceaccel,QObject*parent,constchar*name=0,booltoggle=FALSE)~QAction()virtualvoidsetIconSet(constQIconSet&)QIconSeticonSet()constvirtualvoidsetText(constQString&)QStringtext()constvirtualvoidsetMenuText(constQString&)QStringmenuText()constvirtualvoidsetToolTip(constQString&)QStringtoolTip()constvirtualvoidsetStatusTip(constQString&)QStringstatusTip()constvirtualvoidsetWhatsThis(constQString&)QStringwhatsThis()constvirtualvoidsetAccel(constQKeySequence&key)QKeySequenceaccel()constvirtualvoidsetToggleAction(bool)boolisToggleAction()constboolisOn()constboolisEnabled()constvirtualbooladdTo(QWidget*w)virtualboolremoveFrom(QWidget*w)公有槽voidtoggle()virtualvoidsetOn(bool)virtualvoidsetEnabled(bool)信號(hào)voidactivated()voidtoggled(bool)屬性QKeySequenceaccel-操作快捷鍵boolenabled-操作是否生效QIconSeticonSet-操作的圖標(biāo)QStringmenuText-操作的菜單文本boolon-切換操作是否打開QStringstatusTip-操作的狀態(tài)提示QStringtext-操作的描述文本booltoggleAction-操作是否是切換操作QStringtoolTip-操作的工具提示QStringwhatsThis-操作的“這是什么?”幫助文本保護(hù)成員virtualvoidaddedTo(QWidget*actionWidget,QWidget*container)virtualvoidaddedTo(intindex,QPopupMenu*menu)詳細(xì)描述QAction類提供了一個(gè)可以同時(shí)出現(xiàn)在菜單和工具條上的抽象用戶界面操作。在圖形用戶界面應(yīng)用程序中很多命令可以通過菜單選項(xiàng)、工具條按鈕和鍵盤快捷鍵調(diào)用。因?yàn)橥粋€(gè)操作將會(huì)被執(zhí)行,而與它的調(diào)用方法無關(guān),并且因?yàn)椴藛魏凸ぞ邨l必須保持同步,所以提供一個(gè)操作這樣的命令很有用。一個(gè)操作可以被添加到菜單和工具條中并且將會(huì)自動(dòng)使它們同步。例如,如果用戶按下“加粗”工具條按鈕,“加粗”菜單項(xiàng)將會(huì)自動(dòng)被選中。QAction可以包含圖標(biāo)、菜單文本、快捷鍵、狀態(tài)條文本、這是什么文本和工具提示。它們可以分別通過setIconSet()、setText()、setMenuText()、setToolTip()、setStatusTip()、setWhatsThis()和setAccel()來設(shè)置。操作可以是一個(gè)切換操作,例如,一個(gè)“加粗”工具條按鈕,或者一個(gè)命令操作,例如“打開文件”來調(diào)用打開文件對(duì)話框。當(dāng)切換操作的狀態(tài)改變了,它發(fā)射toggled()信號(hào)。當(dāng)命令操作和切換按鈕被調(diào)用時(shí),它們都發(fā)射activated()信號(hào)。使用setToggleAction()來設(shè)置操作的切換狀態(tài)。如果要看操作是否是切換操作,請(qǐng)使用isToggleAction()。切換操作可以是“開”,isOn()返回真,或者“關(guān)”,isOn()返回假。操作可以使用addTo()被添加到窗口部件(菜單或者工具條)中,并且使用removeFrom()來移除。一旦QAction已經(jīng)被創(chuàng)建,它應(yīng)該被添加到相應(yīng)的菜單或者工具條重并且然后連接到執(zhí)行這個(gè)操作的槽。例如:fileSaveAction=newQAction("SaveFile",QPixmap(filesave),"&Save",CTRL+Key_S,this,"save");connect(fileSaveAction,SIGNAL(activated()),this,SLOT(save()));我們創(chuàng)建一個(gè)菜單文本為“保存(&S)”并且Ctrl+S為鍵盤快捷鍵的“文件保存”操作。我們連接fileSaveAction的activated()信號(hào)到我自己的save()槽。注意在這時(shí)還沒有菜單或者工具條操作,接下來我們將添加它們:QToolBar*fileTools=newQToolBar(this,"fileoperations");fileSaveAction->addTo(fileTools);QPopupMenu*file=newQPopupMenu(this);menuBar()->insertItem("&File",file);fileSaveAction->addTo(file);我們創(chuàng)建了一個(gè)工具條并把我們的fileSaveAction添加進(jìn)去。類似的,我們創(chuàng)建一個(gè)菜單,添加一個(gè)頂級(jí)菜單項(xiàng)并且把我們的fileSaveAction添加進(jìn)去。(對(duì)于一個(gè)更詳細(xì)的實(shí)例請(qǐng)參考有QAction特征的簡(jiǎn)單應(yīng)用程序排演。)我們建議把操作為它所在的窗口的子對(duì)象來創(chuàng)建。在絕大多數(shù)情況下操作是應(yīng)用程序主窗口的子對(duì)象。為了防止循環(huán),不要在一個(gè)稍后要添加操作的窗口部件的子對(duì)象中創(chuàng)建操作。也可以參考主窗口和相關(guān)類和基本窗口部件。成員函數(shù)文檔QAction::QAction(QObject*parent,constchar*name=0,booltoggle=FALSE)構(gòu)造一個(gè)父對(duì)象為parent并且名稱為name的操作。如果toggle為真,操作將是切換操作,否則它就是命令操作。如果parent是QActionGroup,新的操作會(huì)把自己插入到parent中。為了使快捷鍵和狀態(tài)提示能夠工作,parent必須是一個(gè)窗口部件或者一個(gè)父對(duì)象為窗口部件的操作組。QAction::QAction(constQString&text,constQIconSet&icon,constQString&menuText,QKeySequenceaccel,QObject*parent,constchar*name=0,booltoggle=FALSE)構(gòu)造一個(gè)有如下屬性的操作:描述為text、圖標(biāo)為icon、菜單文本為menuText并且鍵盤快捷鍵為accel。它是parent的子對(duì)象并且名稱為name。如果toggle為真,操作將是切換操作,否則它就是命令操作。如果parent是QActionGroup,新的操作會(huì)把自己插入到parent中。為了使快捷鍵和狀態(tài)提示能夠工作,parent必須是一個(gè)窗口部件或者一個(gè)父對(duì)象為窗口部件的操作組。text和accel將會(huì)用于工具提示和狀態(tài)提示,除非你使用setToolTip()和setStatusTip()為它們提供特定文本。QAction::QAction(constQString&text,constQString&menuText,QKeySequenceaccel,QObject*parent,constchar*name=0,booltoggle=FALSE)這個(gè)構(gòu)造函數(shù)的結(jié)果是沒有圖標(biāo)的操作:描述為text、菜單文本為menuText并且鍵盤快捷鍵為accel。它是parent的子對(duì)象并且名稱為name。如果toggle為真,操作將是切換操作,否則它就是命令操作。如果parent是QActionGroup,新的操作會(huì)把自己插入到parent中。為了使快捷鍵和狀態(tài)提示能夠工作,parent必須是一個(gè)窗口部件或者一個(gè)父對(duì)象為窗口部件的操作組。text和accel將會(huì)用于工具提示和狀態(tài)提示,除非你使用setToolTip()和setStatusTip()為它們提供特定文本。QAction::~QAction()銷毀這個(gè)對(duì)象并且釋放已經(jīng)分配的資源。QKeySequenceQAction::accel()const返回操作的快捷鍵。詳細(xì)情況請(qǐng)參考“accel”屬性。voidQAction::activated()[信號(hào)]當(dāng)操作被用戶激活時(shí),也就是說當(dāng)用戶點(diǎn)擊菜單選項(xiàng)或者工具條按鈕或者按下操作的快捷鍵組合時(shí),這個(gè)信號(hào)被發(fā)射。對(duì)于命令操作連接這個(gè)信號(hào)。對(duì)于切換按鈕連接toggled()信號(hào)。例如:action/application.cpp、chart/chartform.cpp和themes/themes.cpp。boolQAction::addTo(QWidget*w)[虛]把這個(gè)這個(gè)操作添加到窗口部件w?,F(xiàn)在操作可以被添加到QToolBar和QPopupMenu窗口部件中。被添加到菜單條中的操作會(huì)自動(dòng)被顯示為一個(gè)按鈕,被添加到彈出菜單中的操作會(huì)自動(dòng)顯示為一個(gè)菜單項(xiàng)。如果操作被添加成功,addTo()返回真,否則返回假。(如果w不是QToolBar或者QPopupMenu,操作將不會(huì)被添加并且將返回假。)也可以參考removeFrom()。例如:action/application.cpp、action/toggleaction/toggleaction.cpp、chart/chartform.cpp和textedit/textedit.cpp。在QActionGroup中被重新實(shí)現(xiàn)。voidQAction::addedTo(QWidget*actionWidget,QWidget*container)[虛保護(hù)]當(dāng)它在container中為這個(gè)操作創(chuàng)建一個(gè)窗口部件時(shí)(actionWidget),這個(gè)函數(shù)被addTo()調(diào)用。voidQAction::addedTo(intindex,QPopupMenu*menu)[虛保護(hù)]這是一個(gè)重載成員函數(shù),提供了方便。它的行為基本上和上面的函數(shù)相同。當(dāng)它在彈出菜單menu中為這個(gè)操作創(chuàng)建一個(gè)索引為index的菜單項(xiàng)時(shí),這個(gè)函數(shù)被addTo()調(diào)用。QIconSetQAction::iconSet()const返回操作的圖標(biāo)。詳細(xì)情況請(qǐng)參考“iconSet”屬性。boolQAction::isEnabled()const如果操作生效,返回真,否則返回假。詳細(xì)情況請(qǐng)參考“enabled”屬性。boolQAction::isOn()const如果切換操作是開的,返回真,否則返回假。詳細(xì)情況請(qǐng)參考“on”屬性。boolQAction::isToggleAction()const如果操作是切換操作,返回真,否則返回假。詳細(xì)情況請(qǐng)參考“toggleAction”屬性。QStringQAction::menuText()const返回操作的菜單文本。詳細(xì)情況請(qǐng)參考“menuText”屬性。boolQAction::removeFrom(QWidget*w)[虛]從窗口部件w中移除操作。如果操作被成功移除,返回真,否則返回假。也可以參考addTo()。voidQAction::setAccel(constQKeySequence&key)[虛]設(shè)置操作的快捷鍵為key。詳細(xì)情況請(qǐng)參考“accel”屬性。voidQAction::setEnabled(bool)[虛槽]設(shè)置操作是否生效。詳細(xì)情況請(qǐng)參考“enabled”屬性。voidQAction::setIconSet(constQIconSet&)[虛]設(shè)置操作的圖標(biāo)。詳細(xì)情況請(qǐng)參考“iconSet”屬性。voidQAction::setMenuText(constQString&)[虛]設(shè)置操作的菜單文本。詳細(xì)情況請(qǐng)參考“menuText”屬性。voidQAction::setOn(bool)[虛槽]設(shè)置切換按鈕為開。詳細(xì)情況請(qǐng)參考“on”屬性。voidQAction::setStatusTip(constQString&)[虛]設(shè)置操作的狀態(tài)提示。詳細(xì)情況請(qǐng)參考“statusTip”屬性。voidQAction::setText(constQString&)[虛]設(shè)置操作的描述文本。詳細(xì)情況請(qǐng)參考“text”屬性。voidQAction::setToggleAction(bool)[虛]設(shè)置操作是否是切換按鈕。詳細(xì)情況請(qǐng)參考“toggleAction”屬性。voidQAction::setToolTip(constQString&)[虛]設(shè)置操作的工具提示。詳細(xì)情況請(qǐng)參考“toolTip”屬性。voidQAction::setWhatsThis(constQString&)[虛]設(shè)置操作的“這是什么?”幫助文本。詳細(xì)情況請(qǐng)參考“whatsThis”屬性。QStringQAction::statusTip()const返回操作的狀態(tài)提示。詳細(xì)情況請(qǐng)參考“statusTip”屬性。QStringQAction::text()const返回操作的描述文本。詳細(xì)情況請(qǐng)參考“text”屬性。voidQAction::toggle()[槽]切換切換按鈕的狀態(tài)。也可以參考o(jì)n、toggled()和toggleAction。voidQAction::toggled(bool)[信號(hào)]當(dāng)切換按鈕改變狀態(tài)時(shí),這個(gè)信號(hào)被發(fā)射,命令操作和QActionGroups不發(fā)射toggled()。參數(shù)表示新的狀態(tài),也就是如果切換按鈕被打開,為真,或者如果它被關(guān)閉,為假。依賴切換按鈕是否被打開或者關(guān)閉來觸發(fā)用戶命令要把它連接到一個(gè)可以得到bool變量來識(shí)別狀態(tài)的槽,例如:QMainWindow*window=newQMainWindow;QAction*labelonoffaction=newQAction(window,"labelonoff",TRUE);QObject::connect(labelonoffaction,SIGNAL(toggled(bool)),window,SLOT(setUsesTextLabel(bool)));也可以參考activated()、toggleAction和on。實(shí)例:action/toggleaction/toggleaction.cpp。QStringQAction::toolTip()const返回操作的工具提示。詳細(xì)情況請(qǐng)參考“toolTip”屬性。QStringQAction::whatsThis()const返回操作的“這是什么?”幫助文本。詳細(xì)情況請(qǐng)參考“whatsThis”屬性。屬性文檔QKeySequenceaccel這個(gè)屬性保存的是操作的快捷鍵。鍵代碼可以在Qt::Key和Qt::Modifier中找到。這里沒有默認(rèn)快捷鍵。通過setAccel()設(shè)置屬性值并且通過accel()來獲得屬性值。boolenabled這個(gè)屬性保存的是操作是否生效。失效的操作不能被用戶選擇。它們不從菜單/工具條上消失,但是會(huì)以某種方式表面它們不可用,例如,它們也許被變灰。失效操作上的“這是什么?”幫助還是由被設(shè)置的QAction::whatsThis屬性提供。通過setEnabled()設(shè)置屬性值并且通過isEnabled()來獲得到屬性值。QIconSeticonSet這個(gè)屬性保存的是操作的圖標(biāo)。這個(gè)圖標(biāo)會(huì)用在工具條按鈕和菜單中菜單文本的左面。這里沒有默認(rèn)圖標(biāo)。(請(qǐng)參考action/toggleaction/toggleaction.cpp實(shí)例。)通過setIconSet()設(shè)置屬性值并且通過iconSet()來獲得屬性值。QStringmenuText這個(gè)屬性保存的是操作的菜單文本。如果操作備添加為菜單中的一個(gè)菜單選項(xiàng)將會(huì)由圖標(biāo)(如果有的話)、菜單文本和快捷鍵(如果有的話)組成。如果沒有菜單文本在構(gòu)造函數(shù)或者使用setMenuText()中明確設(shè)置,操作的描述文本將用來作為菜單文本。這里沒有默認(rèn)菜單文本。也可以參考text。通過setMenuText()設(shè)置屬性值并且通過menuText()來獲得屬性值。boolon這個(gè)屬性保存的是切換按鈕是否為開。對(duì)于命令操作和QActionGroup這個(gè)屬性總是開的(真),setOn()對(duì)于它們沒有效果。對(duì)于為真的操作,這個(gè)屬性的默認(rèn)值是關(guān)(假)。也可以參考toggleAction。通過setOn()設(shè)置屬性值并且通過isOn()來獲得屬性值。QStringstatusTip這個(gè)屬性保存的是操作的狀態(tài)提示。這個(gè)狀態(tài)提示將會(huì)被顯示在操作的頂級(jí)父窗口部件提供的所有狀態(tài)條上。如果沒有狀態(tài)提示被定義,操作使用工具條提示文本。這里沒有默認(rèn)的狀態(tài)提示。也可以參考statusTip和toolTip。通過setStatusTip()設(shè)置屬性值并且通過
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 教師聘用合同書填寫說明
- 云浮市公安局云安分局招聘輔警真題
- 山東省任城監(jiān)獄公務(wù)員(人民警察)招錄真題
- 廣西文化產(chǎn)業(yè)集團(tuán)有限公司招聘真題
- 2023年甘肅金川集團(tuán)貿(mào)易有限公司屬地化招聘考試真題
- 《信息安全專題講座》課件
- 耳鼻喉問題及其處理方法
- 小班美術(shù)活動(dòng)策劃方案(7篇)
- 污泥固化填埋應(yīng)急處理工程可行性實(shí)施報(bào)告
- 年產(chǎn)6000噸米糠油生產(chǎn)線技改擴(kuò)建項(xiàng)目可行性報(bào)告
- 走進(jìn)魚類世界智慧樹知到答案2024年中國海洋大學(xué)
- 代賣商品合同協(xié)議書
- 十字相乘法解一元二次方程練習(xí)100題及答案
- 中外合作辦學(xué)規(guī)劃方案
- 廠房屋頂光伏分布式發(fā)電項(xiàng)目建議書
- 2024年人教版初一道德與法治上冊(cè)期中考試卷(附答案)
- 2024年第九屆“鵬程杯”六年級(jí)語文邀請(qǐng)賽試卷(復(fù)賽)
- 國開2024年《建筑結(jié)構(gòu)#》形考作業(yè)1-4答案
- DL-T1475-2015電力安全工器具配置與存放技術(shù)要求
- 漏檢分析改善措施
- 新制定《公平競(jìng)爭(zhēng)審查條例》學(xué)習(xí)課件
評(píng)論
0/150
提交評(píng)論