nodeguy/website/docs/api/QAction.md
2019-10-27 10:41:16 +01:00

105 lines
3.5 KiB
Markdown

---
sidebar_label: QAction
title: QAction
---
> The QAction class provides an abstract user interface action that can be inserted into widgets.
**This class is a JS wrapper around Qt's [QAction class](https://doc.qt.io/qt-5/qaction.html)**
**QAction inherits from [EventWidget](api/EventWidget.md)**
### Example
```javascript
const { QAction, QMenu } = require("@nodegui/nodegui");
const menu = new QMenu();
const menuAction = new QAction();
menuAction.setText("subAction");
menuAction.addEventListener("triggered", () => {
console.log("Action clicked");
});
menu.addAction(menuAction);
```
### `new QAction(parent?)`
- `parent` NodeWidget. Constructs an action with parent. If parent is an action group the action will be automatically inserted into the group.
## Static Methods
QAction can access all the static methods defined in [EventWidget](api/EventWidget.md)
## Instance Properties
QAction can access all the instance properties defined in [EventWidget](api/EventWidget.md)
## Instance Methods
QAction can access all the instance methods defined in [EventWidget](api/EventWidget.md). Additionally it also has the following instance methods:
### `action.setEnabled(enabled)`
This property holds whether the action is enabled. It calls the native method [QAction: setEnabled](https://doc.qt.io/qt-5/qaction.html#enabled-prop).
- `enabled` - Boolean
### `action.setText(on)`
This property holds the action's descriptive text. It calls the native method [QAction: setText](https://doc.qt.io/qt-5/qaction.html#text-prop).
- `text` - string
### `action.setIcon(icon)`
Sets the icon of action. It calls the native method [QAction: setIcon](https://doc.qt.io/qt-5/qaction.html#icon-prop).
- `icon` [QIcon](api/QIcon.md)
### `action.setMenu(menu)`
Sets the menu contained by this action to the specified menu. It calls the native method [QAction: setMenu](https://doc.qt.io/qt-5/qaction.html#setMenu).
- `menu` [QMenu](api/QMenu.md)
### `action.setShortcut(keySequence)`
This property holds the action's key sequence. It calls the native method [QAction: setShortcut](https://doc.qt.io/qt-5/qaction.html#shortcut-prop).
- `keySequence` [QKeySequence](api/QKeySequence.md)
### `action.setShortcutContext(contextEnum)`
This property holds the context in which the action is valid. It calls the native method [QAction: setShortcutContext](https://doc.qt.io/qt-5/qaction.html#shortcutContext-prop).
- `contextEnum` - ShortcutContext enum.
### `action.isCheckable()`
Returns true if this action has been marked as checkable. It calls the native method [QIcon: isCheckable](https://doc.qt.io/qt-5/qaction.html#checkable-prop).
### `icon.setCheckable(isCheckable)`
Indicate that this action is checkable.
A checkable action is one which has an on/off state. For example, in a word processor, a Bold toolbar button may be either on or off. An action which is not a toggle action is a command action; a command action is simply executed, e.g. file save. By default, this property is `false`.
It calls the native method [QIcon: setCheckable](https://doc.qt.io/qt-5/qaction.html#checkable-prop).
- `isCheckable`: boolean
### `action.isChecked()`
Returns true if this action has been marked as checked. It calls the native method [QIcon: isChecked](https://doc.qt.io/qt-5/qaction.html#checked-prop).
### `icon.setChecked(isChecked)`
Indicate that this action is checked.
Only checkable actions can be checked. By default, this is false (the action is unchecked).
It calls the native method [QIcon: setChecked](https://doc.qt.io/qt-5/qaction.html#checkable-prop).
- `isChecked`: boolean