buttonSetAction: Difference between revisions
Jump to navigation
Jump to search
m (Bot: Reverted to revision 97840 by killzone_kid on 2016-11-11T22:34:28Z) |
m (template:command argument fix) |
||
Line 16: | Line 16: | ||
* CT_ACTIVETEXT | * CT_ACTIVETEXT | ||
* CT_SHORTCUTBUTTON | * CT_SHORTCUTBUTTON | ||
{{warning | The action code is expected to be in '''[[SQS]]''' format}} |= | {{warning | The action code is expected to be in '''[[SQS]]''' format}} |DESCRIPTION= | ||
____________________________________________________________________________________________ | ____________________________________________________________________________________________ | ||
| '''buttonSetAction''' [idc, action] |= | | '''buttonSetAction''' [idc, action] |SYNTAX= | ||
|p1= [idc, action]: [[Array]] |= | |p1= [idc, action]: [[Array]] |PARAMETER1= | ||
|p2= idc: [[Number]] - control ID |= | |p2= idc: [[Number]] - control ID |PARAMETER2= | ||
|p3= action: [[String]] - [[SQS]] code body that should be executed when the button/active text is clicked |= | |p3= action: [[String]] - [[SQS]] code body that should be executed when the button/active text is clicked |PARAMETER3= | ||
| [[Nothing]] |= | | [[Nothing]] |RETURNVALUE= | ||
|s2= control '''buttonSetAction''' action |= | |s2= control '''buttonSetAction''' action |SYNTAX= | ||
|p21= control: [[Control]] - button control|= | |p21= control: [[Control]] - button control|PARAMETER1= | ||
|p22= action: [[String]] - [[SQS]] code body that should be executed when the button/active text is clicked |= | |p22= action: [[String]] - [[SQS]] code body that should be executed when the button/active text is clicked |PARAMETER2= | ||
|r2= [[Nothing]] |= | |r2= [[Nothing]] |RETURNVALUE= | ||
____________________________________________________________________________________________ | ____________________________________________________________________________________________ | ||
|x1= <code>[[buttonSetAction]] [100, "[[player]] [[exec]] ""reply.sqs"""];</code> |= | |x1= <code>[[buttonSetAction]] [100, "[[player]] [[exec]] ""reply.sqs"""];</code> |EXAMPLE1= | ||
|x2= <code>_ctrl [[buttonSetAction]] "[[if]] ([[alive]] bob) [[then]] {[[hint]] 'alive'} [[else]] {[[hint]] 'dead'}"; // SQF but SQS compatible, see [[SQS]]</code> |= | |x2= <code>_ctrl [[buttonSetAction]] "[[if]] ([[alive]] bob) [[then]] {[[hint]] 'alive'} [[else]] {[[hint]] 'dead'}"; // SQF but SQS compatible, see [[SQS]]</code> |EXAMPLE2= | ||
____________________________________________________________________________________________ | ____________________________________________________________________________________________ | ||
| [[buttonAction]], [[ctrlActivate]] |= | | [[buttonAction]], [[ctrlActivate]] |SEEALSO= | ||
}} | }} |
Revision as of 14:34, 7 April 2019
Description
- Description:
- Set the action of a control of the currently active user dialog. Can be used for buttons and active texts. See Dialog Control for more information about user dialogs. Works with:
- CT_BUTTON
- CT_XBUTTON
- CT_ACTIVETEXT
- CT_SHORTCUTBUTTON
- Groups:
- Uncategorised
Syntax
- Syntax:
- buttonSetAction [idc, action]
- Parameters:
- [idc, action]: Array
- idc: Number - control ID
- action: String - SQS code body that should be executed when the button/active text is clicked
- Return Value:
- Nothing
Alternative Syntax
- Syntax:
- control buttonSetAction action
- Parameters:
- control: Control - button control
- action: String - SQS code body that should be executed when the button/active text is clicked
- Return Value:
- Nothing
Examples
- Example 1:
buttonSetAction [100, "player exec ""reply.sqs"""];
- Example 2:
_ctrl buttonSetAction "if (alive bob) then {hint 'alive'} else {hint 'dead'}"; // SQF but SQS compatible, see SQS
Additional Information
- See also:
- buttonActionctrlActivate
Notes
-
Report bugs on the Feedback Tracker and/or discuss them on the Arma Discord or on the Forums.
Only post proven facts here! Add Note
Notes
- Posted on October 5, 2009 - 16:23
- kungtotte
-
When using buttonSetAction for an ActiveText control from a script, you cannot use any variables local to the script in it.
/* This will print 'any bar' in the hint box, since _foo has no value according to buttonSetAction */ _foo = "foo"; buttonSetAction [100, "hint format[""%1 bar"", _foo];"];
Bottom Section
- Posted on February 15, 2016 - 10:15 (UTC)
- Molaron
- This command does not overwride the buttonaction which was set via "action" in the hpp of the dialog
- Posted on June 11, 2016 - 19:24 (UTC)
- Nomisum
-
To use variables local to the defining script, a syntax like the one below needs to be used:
_foo = "foo"; buttonSetAction [100, format["hint '%1 bar'", _foo]];
works! thanks to Kronzky for commenting this workaround in the VBS wiki
Categories:
- Scripting Commands
- Introduced with Operation Flashpoint version 1.5
- Operation Flashpoint: New Scripting Commands
- Operation Flashpoint: Scripting Commands
- Command Group: Uncategorised
- Scripting Commands: Local Effect
- Scripting Commands OFP 1.99
- Scripting Commands OFP 1.96
- Scripting Commands ArmA
- Scripting Commands ArmA2
- Command Group: GUI Control
- Scripting Commands Arma 3
- Scripting Commands Take On Helicopters