QAction类
1、QAction::QAction ( const QString & text, QObject * parent )
QAction类的构造函数之一,利用text,parent创建QAction对象。QAction对象一般为菜单中的菜单项,比如 “文件”菜单中”新建”选项就是一个QAction对象,上述构造函数中text成员变量即为菜单项所表示的内容。
2、可以通过QWidget::addAction()或者是QGraphicsWidget::addAction()函数将Actions添加到窗口部件上。注意,只有将Actions添加到窗口部件上之后,我们才可以使用这些actions;当actions的快捷键是全局的时候,我们也必须先将actions添加到窗口部件上。
QAction可以包含图标、菜单文本、快捷键、状态条文本、以及这是什么文本和工具的提示。它们可以分别通过setIconSet()、setText()、setMenuText()、setToolTip()、setStatusTip()、setWhatsThis()和setAccel()来设置。
操作可以是一个切换操作,例如,一个“加粗”工具条按钮,或者一个命令操作,例如“打开文件”来调用打开文件对话框。当切换操作的状态改变了,它发射toggled()信号。当命令操作和切换按钮被调用时,它们都发射activated()信号。使用setToggleAction()来设置操作的切换状态。如果要看操作是否是切换操作,请使用isToggleAction()。切换操作可以是“开”,isOn()返回真,或者“关”,isOn()返回假。
操作可以使用addTo()被添加到窗口部件(菜单或者工具条)中,并且使用removeFrom()来移除。
用法:QAction *newAction = new QAction(tr(“&New”),this);
2、void QAction::setIcon ( const QIcon & icon )
该函数可设置菜单项名称前的图标
用法:newAction->setIcon(QIcon(“:/images/new.png”));
3、void QAction::setShortcut ( const QKeySequence & shortcut );
设置QAction对象执行的快捷键
用法:newAction->setShortcut(tr(“Ctrl+N”));
4、void QAction::setStatusTip ( const QString & statusTip );
设置当鼠标移动到“动作”上时,状态栏显示的提示语。
5、void QAction::setVisible ( bool );
设置“动作”显示与否,当形参为true是,“动作”表示。
6、void QAction::triggered ( bool checked = false ) [signal]
此函数为信号,当用户触发此“动作”时,此信号发射。例如用户点击了菜单中的菜单项等。
此函数一般用法为:在QObject::connect()函数中作为信号参数,用于触发“动作”所对应执行的槽函数——实现“动作”的功能函数,例如:“新建”按钮被用户按下,所需要的功能可能是新建一个文档,那么新建一个文档的动作就在这个槽函数中实现。至于此信号函数中的形参暂时可以忽略。以后会在介绍QObject类中的静态方法connect()函数时详细解说。
7、void QAction::setCheckable ( bool );
此函数用于设置QAction类中的私有变量: bool checkable ,此属性用以提供“动作”是否为复选动作,例如Qt Creator中“控件”菜单中的“全屏”菜单项即为复选动作菜单。