




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
QAction类参考QAction类提供了一个可以同时出现在菜单和工具条上的抽象用户界面操作。详情请见……#include<qaction.h>InheritsQObject。InheritedbyQActionGroup。所有成员函数的列表。公有成员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)信号voidactivated()voidtoggled(bool)属性QKeySequenceaccel-操作快捷键boolenabled-操作是否生效QIconSeticonSet-操作的图标QStringmenuText-操作的菜单文本boolon-切换操作是否打开QStringstatusTip-操作的状态提示QStringtext-操作的描述文本booltoggleAction-操作是否是切换操作QStringtoolTip-操作的工具提示QStringwhatsThis-操作的“这是什么?”帮助文本保护成员virtualvoidaddedTo(QWidget*actionWidget,QWidget*container)virtualvoidaddedTo(intindex,QPopupMenu*menu)详细描述QAction类提供了一个可以同时出现在菜单和工具条上的抽象用户界面操作。在图形用户界面应用程序中很多命令可以通过菜单选项、工具条按钮和键盘快捷键调用。因为同一个操作将会被执行,而与它的调用方法无关,并且因为菜单和工具条必须保持同步,所以提供一个操作这样的命令很有用。一个操作可以被添加到菜单和工具条中并且将会自动使它们同步。例如,如果用户按下“加粗”工具条按钮,“加粗”菜单项将会自动被选中。QAction可以包含图标、菜单文本、快捷键、状态条文本、这是什么文本和工具提示。它们可以分别通过setIconSet()、setText()、setMenuText()、setToolTip()、setStatusTip()、setWhatsThis()和setAccel()来设置。操作可以是一个切换操作,例如,一个“加粗”工具条按钮,或者一个命令操作,例如“打开文件”来调用打开文件对话框。当切换操作的状态改变了,它发射toggled()信号。当命令操作和切换按钮被调用时,它们都发射activated()信号。使用setToggleAction()来设置操作的切换状态。如果要看操作是否是切换操作,请使用isToggleAction()。切换操作可以是“开”,isOn()返回真,或者“关”,isOn()返回假。操作可以使用addTo()被添加到窗口部件(菜单或者工具条)中,并且使用removeFrom()来移除。一旦QAction已经被创建,它应该被添加到相应的菜单或者工具条重并且然后连接到执行这个操作的槽。例如:fileSaveAction=newQAction("SaveFile",QPixmap(filesave),"&Save",CTRL+Key_S,this,"save");connect(fileSaveAction,SIGNAL(activated()),this,SLOT(save()));我们创建一个菜单文本为“保存(&S)”并且Ctrl+S为键盘快捷键的“文件保存”操作。我们连接fileSaveAction的activated()信号到我自己的save()槽。注意在这时还没有菜单或者工具条操作,接下来我们将添加它们:QToolBar*fileTools=newQToolBar(this,"fileoperations");fileSaveAction->addTo(fileTools);QPopupMenu*file=newQPopupMenu(this);menuBar()->insertItem("&File",file);fileSaveAction->addTo(file);我们创建了一个工具条并把我们的fileSaveAction添加进去。类似的,我们创建一个菜单,添加一个顶级菜单项并且把我们的fileSaveAction添加进去。(对于一个更详细的实例请参考有QAction特征的简单应用程序排演。)我们建议把操作为它所在的窗口的子对象来创建。在绝大多数情况下操作是应用程序主窗口的子对象。为了防止循环,不要在一个稍后要添加操作的窗口部件的子对象中创建操作。也可以参考主窗口和相关类和基本窗口部件。成员函数文档QAction::QAction(QObject*parent,constchar*name=0,booltoggle=FALSE)构造一个父对象为parent并且名称为name的操作。如果toggle为真,操作将是切换操作,否则它就是命令操作。如果parent是QActionGroup,新的操作会把自己插入到parent中。为了使快捷键和状态提示能够工作,parent必须是一个窗口部件或者一个父对象为窗口部件的操作组。QAction::QAction(constQString&text,constQIconSet&icon,constQString&menuText,QKeySequenceaccel,QObject*parent,constchar*name=0,booltoggle=FALSE)构造一个有如下属性的操作:描述为text、图标为icon、菜单文本为menuText并且键盘快捷键为accel。它是parent的子对象并且名称为name。如果toggle为真,操作将是切换操作,否则它就是命令操作。如果parent是QActionGroup,新的操作会把自己插入到parent中。为了使快捷键和状态提示能够工作,parent必须是一个窗口部件或者一个父对象为窗口部件的操作组。text和accel将会用于工具提示和状态提示,除非你使用setToolTip()和setStatusTip()为它们提供特定文本。QAction::QAction(constQString&text,constQString&menuText,QKeySequenceaccel,QObject*parent,constchar*name=0,booltoggle=FALSE)这个构造函数的结果是没有图标的操作:描述为text、菜单文本为menuText并且键盘快捷键为accel。它是parent的子对象并且名称为name。如果toggle为真,操作将是切换操作,否则它就是命令操作。如果parent是QActionGroup,新的操作会把自己插入到parent中。为了使快捷键和状态提示能够工作,parent必须是一个窗口部件或者一个父对象为窗口部件的操作组。text和accel将会用于工具提示和状态提示,除非你使用setToolTip()和setStatusTip()为它们提供特定文本。QAction::~QAction()销毁这个对象并且释放已经分配的资源。QKeySequenceQAction::accel()const返回操作的快捷键。详细情况请参考“accel”属性。voidQAction::activated()[信号]当操作被用户激活时,也就是说当用户点击菜单选项或者工具条按钮或者按下操作的快捷键组合时,这个信号被发射。对于命令操作连接这个信号。对于切换按钮连接toggled()信号。例如:action/application.cpp、chart/chartform.cpp和themes/themes.cpp。boolQAction::addTo(QWidget*w)[虚]把这个这个操作添加到窗口部件w。现在操作可以被添加到QToolBar和QPopupMenu窗口部件中。被添加到菜单条中的操作会自动被显示为一个按钮,被添加到弹出菜单中的操作会自动显示为一个菜单项。如果操作被添加成功,addTo()返回真,否则返回假。(如果w不是QToolBar或者QPopupMenu,操作将不会被添加并且将返回假。)也可以参考removeFrom()。例如:action/application.cpp、action/toggleaction/toggleaction.cpp、chart/chartform.cpp和textedit/textedit.cpp。在QActionGroup中被重新实现。voidQAction::addedTo(QWidget*actionWidget,QWidget*container)[虚保护]当它在container中为这个操作创建一个窗口部件时(actionWidget),这个函数被addTo()调用。voidQAction::addedTo(intindex,QPopupMenu*menu)[虚保护]这是一个重载成员函数,提供了方便。它的行为基本上和上面的函数相同。当它在弹出菜单menu中为这个操作创建一个索引为index的菜单项时,这个函数被addTo()调用。QIconSetQAction::iconSet()const返回操作的图标。详细情况请参考“iconSet”属性。boolQAction::isEnabled()const如果操作生效,返回真,否则返回假。详细情况请参考“enabled”属性。boolQAction::isOn()const如果切换操作是开的,返回真,否则返回假。详细情况请参考“on”属性。boolQAction::isToggleAction()const如果操作是切换操作,返回真,否则返回假。详细情况请参考“toggleAction”属性。QStringQAction::menuText()const返回操作的菜单文本。详细情况请参考“menuText”属性。boolQAction::removeFrom(QWidget*w)[虚]从窗口部件w中移除操作。如果操作被成功移除,返回真,否则返回假。也可以参考addTo()。voidQAction::setAccel(constQKeySequence&key)[虚]设置操作的快捷键为key。详细情况请参考“accel”属性。voidQAction::setEnabled(bool)[虚槽]设置操作是否生效。详细情况请参考“enabled”属性。voidQAction::setIconSet(constQIconSet&)[虚]设置操作的图标。详细情况请参考“iconSet”属性。voidQAction::setMenuText(constQString&)[虚]设置操作的菜单文本。详细情况请参考“menuText”属性。voidQAction::setOn(bool)[虚槽]设置切换按钮为开。详细情况请参考“on”属性。voidQAction::setStatusTip(constQString&)[虚]设置操作的状态提示。详细情况请参考“statusTip”属性。voidQAction::setText(constQString&)[虚]设置操作的描述文本。详细情况请参考“text”属性。voidQAction::setToggleAction(bool)[虚]设置操作是否是切换按钮。详细情况请参考“toggleAction”属性。voidQAction::setToolTip(constQString&)[虚]设置操作的工具提示。详细情况请参考“toolTip”属性。voidQAction::setWhatsThis(constQString&)[虚]设置操作的“这是什么?”帮助文本。详细情况请参考“whatsThis”属性。QStringQAction::statusTip()const返回操作的状态提示。详细情况请参考“statusTip”属性。QStringQAction::text()const返回操作的描述文本。详细情况请参考“text”属性。voidQAction::toggle()[槽]切换切换按钮的状态。也可以参考on、toggled()和toggleAction。voidQAction::toggled(bool)[信号]当切换按钮改变状态时,这个信号被发射,命令操作和QActionGroups不发射toggled()。参数表示新的状态,也就是如果切换按钮被打开,为真,或者如果它被关闭,为假。依赖切换按钮是否被打开或者关闭来触发用户命令要把它连接到一个可以得到bool变量来识别状态的槽,例如:QMainWindow*window=newQMainWindow;QAction*labelonoffaction=newQAction(window,"labelonoff",TRUE);QObject::connect(labelonoffaction,SIGNAL(toggled(bool)),window,SLOT(setUsesTextLabel(bool)));也可以参考activated()、toggleAction和on。实例:action/toggleaction/toggleaction.cpp。QStringQAction::toolTip()const返回操作的工具提示。详细情况请参考“toolTip”属性。QStringQAction::whatsThis()const返回操作的“这是什么?”帮助文本。详细情况请参考“whatsThis”属性。属性文档QKeySequenceaccel这个属性保存的是操作的快捷键。键代码可以在Qt::Key和Qt::Modifier中找到。这里没有默认快捷键。通过setAccel()设置属性值并且通过accel()来获得属性值。boolenabled这个属性保存的是操作是否生效。失效的操作不能被用户选择。它们不从菜单/工具条上消失,但是会以某种方式表面它们不可用,例如,它们也许被变灰。失效操作上的“这是什么?”帮助还是由被设置的QAction::whatsThis属性提供。通过setEnabled()设置属性值并且通过isEnabled()来获得到属性值。QIconSeticonSet这个属性保存的是操作的图标。这个图标会用在工具条按钮和菜单中菜单文本的左面。这里没有默认图标。(请参考action/toggleaction/toggleaction.cpp实例。)通过setIconSet()设置属性值并且通过iconSet()来获得属性值。QStringmenuText这个属性保存的是操作的菜单文本。如果操作备添加为菜单中的一个菜单选项将会由图标(如果有的话)、菜单文本和快捷键(如果有的话)组成。如果没有菜单文本在构造函数或者使用setMenuText()中明确设置,操作的描述文本将用来作为菜单文本。这里没有默认菜单文本。也可以参考text。通过setMenuText()设置属性值并且通过menuText()来获得属性值。boolon这个属性保存的是切换按钮是否为开。对于命令操作和QActionGroup这个属性总是开的(真),setOn()对于它们没有效果。对于为真的操作,这个属性的默认值是关(假)。也可以参考toggleAction。通过setOn()设置属性值并且通过isOn()来获得属性值。QStringstatusTip这个属性保存的是操作的状态提示。这个状态提示将会被显示在操作的顶级父窗口部件提供的所有状态条上。如果没有状态提示被定义,操作使用工具条提示文本。这里没有默认的状态提示。也可以参考statusTip和toolTip。通过setStatusTip()设置属性值并且通过
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年安徽省合肥四十五中(橡树湾校区)中考物理一模试卷(含解析)
- 天津耀华嘉诚国际中学2025年高三第二学期期中考试数学试题试卷含解析
- 重庆工业职业技术学院《出镜报道实务》2023-2024学年第二学期期末试卷
- 浙江省慈溪市附海初级中学2024-2025学年初三下第二次模拟考试综合试题含解析
- 吕梁学院《景区运营管理》2023-2024学年第二学期期末试卷
- 廊坊职业技术学院《休闲体育项目概论》2023-2024学年第二学期期末试卷
- 湖北省随州市随县2025年初三下学期学前考试英语试题文试题含答案
- 山东省枣庄市薛城区第八中学2025届高三下学期3月适应性考试历史试题含解析
- 昆明医科大学《现代医学基础》2023-2024学年第二学期期末试卷
- 四川省苍溪县重点达标名校2025年区域教师研修一体课程复数与逻辑含解析
- 中共在抗日战争中的作用
- 应急避难场所设置
- 尿激酶溶栓护理课件
- 《曼陀罗绘画疗愈-初三减压》PPT
- 四川2022年4月自考06088《管理思想史》真题
- 砼工程技术交底
- 煤矿污水处理站制度(完整版)资料
- 彩钢板屋面监理细则
- 麻醉药品、精神药品月检查记录表
- 2023年贵州省中学生生物学竞赛考试(初赛)试题( 含答案解析 )
- 单片机课程设计报告电子密码锁
评论
0/150
提交评论