BIS fnc guiMessage: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
(Upgraded page to level 2 (and fixed some errors and clarified some things here and there!))
(Fixed some parameter default values, added info about internal suspension)
Line 59: Line 59:
|gr1= GUI
|gr1= GUI


|descr= [[File:BIS fnc guiMessage.jpg|thumb|right|[[BIS_fnc_guiMessage]] message dialog in {{arma3}}]] Displays an interactive message dialog in the center of the screen.
|descr= [[File:BIS fnc guiMessage.jpg|thumb|right|[[BIS_fnc_guiMessage]] dialog in {{arma3}}]]
Displays an interactive message dialog in the center of the screen.
{{Feature|important|This function internally utilizes suspension ([[waitUntil]] to be specific) and therefore has to be executed in a [[Scheduler#Scheduled_Environment|scheduled environment]].}}


|exec= call
|exec= call
Line 67: Line 69:
|p1= message (Optional, default: ""): [[String]] or [[Structured Text]] - Message
|p1= message (Optional, default: ""): [[String]] or [[Structured Text]] - Message


|p2= header (Optional): [[String]] - Header text
|p2= header (Optional, default: ""): [[String]] - Header text


|p3= okButton (Optional, default: [[true]]):
|p3= okButton (Optional, default: [[true]]):
Line 77: Line 79:
* [[String]] - Custom text for the "Cancel" button
* [[String]] - Custom text for the "Cancel" button


|p5= parent (Optional, default: [[displayNull]]): [[Display]] - Parent display
|p5= parent (Optional, default: {{ic|[] [[call]] [[BIS_fnc_displayMission]]}}): [[Display]] - Parent display


|p6= useParentBox (Optional, default: [[false]]): [[Boolean]] - Try to use control inherited from "RscMessageBox" in parent instead of creating a new one
|p6= useParentBox (Optional, default: [[false]]): [[Boolean]] - Try to use control inherited from "RscMessageBox" in parent instead of creating a new one
Line 83: Line 85:
|p7= pause (Optional, default: [[true]]): [[Boolean]] - Pause simulation while message dialog is open (no effect in multiplayer)
|p7= pause (Optional, default: [[true]]): [[Boolean]] - Pause simulation while message dialog is open (no effect in multiplayer)


|r1= [[Boolean]] - [[true|True]] if the "OK" button was pressed, otherwise [[false]]. Returned only after message box is closed.
|r1= [[Boolean]] - [[true|True]] if the "OK" button was pressed, otherwise [[false]]. Returned only after the message box is closed.


|x1= Because this example uses [[spawn]], the return value of [[BIS_fnc_guiMessage]] is lost and can not be used.
|x1= Because this example uses [[spawn]], the return value of [[BIS_fnc_guiMessage]] is lost and can not be used.
Line 91: Line 93:


[[if]] (_result) [[then]] {
[[if]] (_result) [[then]] {
[[systemChat]] "Player is sure.";
[[systemChat]] "The player is sure.";
} [[else]] {
} [[else]] {
[[systemChat]] "Player is not sure.";
[[systemChat]] "The player is not sure.";
};</code>
};</code>



Revision as of 15:23, 27 May 2021

tkoh logo small.png Take On Helicopters
Arma 3 logo black.png Arma 3
Hover & click on the images for description

Description

Description:
Shows customized native message box to user.
Execution:
spawn
Groups:
GUI

Syntax

Syntax:
[message, header, position, isCancel, parent, pause] spawn BIS_fnc_guiMessage
Parameters:
message: String, Structured Text or Array: When variable BIS_fnc_guiMessage_cursel is defined as a Number, item with this index will be selected.
header: String or Structured Text - (Optional, default "") header text
position: Array - (Optional) position in format [x,y,w,h]
isCancel: Boolean or Array - (Optional, default true) true to display cancel button or array with button texts [okText, cancelText]
parent: Display - (Optional) parent display
pause: Boolean - (Optional) true to pause simulation when message window is open
Return Value:
Array - [endState, lbId]
  • endState: Boolean - true when clicked OK button, false when escaped or clicked on Cancel button
  • lbId: Number - (Optional, returned if listbox was used) selected listbox item
Returned only after message box is closed.

Examples

Example 1:
["Hello World"] spawn BIS_fnc_guiMessage;
Example 2:
TakeOn BIS fnc guiMessage.jpg
["Message", "Header", nil, true] spawn BIS_fnc_guiMessage;
Example 3:
[["Enabled Item", ["Disabled Item"]], "Header"] spawn BIS_fnc_guiMessage;

Additional Information

See also:
hintCBIS_fnc_GUIhint

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
Hover & click on the images for description

Description

Description:
BIS_fnc_guiMessage dialog in Arma 3

Displays an interactive message dialog in the center of the screen.

This function internally utilizes suspension (waitUntil to be specific) and therefore has to be executed in a scheduled environment.
Execution:
call
Groups:
GUI

Syntax

Syntax:
[message, header, okButton, cancelButton, parent, useParentBox, pause] call BIS_fnc_guiMessage
Parameters:
message (Optional, default: ""): String or Structured Text - Message
header (Optional, default: ""): String - Header text
okButton (Optional, default: true):
  • Boolean - Enable the "OK" button
  • String - Custom text for the "OK" button
cancelButton (Optional, default: false):
  • Boolean - Enable the "Cancel" button
  • String - Custom text for the "Cancel" button
parent (Optional, default: [] call BIS_fnc_displayMission): Display - Parent display
useParentBox (Optional, default: false): Boolean - Try to use control inherited from "RscMessageBox" in parent instead of creating a new one
pause (Optional, default: true): Boolean - Pause simulation while message dialog is open (no effect in multiplayer)
Return Value:
Boolean - True if the "OK" button was pressed, otherwise false. Returned only after the message box is closed.

Examples

Example 1:
Because this example uses spawn, the return value of BIS_fnc_guiMessage is lost and can not be used. ["Hello World"] spawn BIS_fnc_guiMessage;
Example 2:
private _result = ["Are you sure?", "Confirm", true, true] call BIS_fnc_guiMessage; if (_result) then { systemChat "The player is sure."; } else { systemChat "The player is not sure."; };

Additional Information

See also:
BIS_fnc_GUIhint BIS_fnc_3DENShowMessage hintC

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
Posted on June 24, 2014 - 00:43 (UTC)
AgentRev
Message boxes can be force-closed with: uiNamespace setVariable ["BIS_fnc_guiMessage_status", false];
Posted on January 13, 2016 - 15:16 (UTC)
Eden
Calling this function can cause an game crash. When doing this you have to spawn the function or add an spawn around it so you can use the result: [] spawn { private _result = ["Are you sure?", "Confirm", true, true] call BIS_fnc_guiMessage; // Use _result here };
Posted on November 1, 2017 - 18:35 (UTC)
demellion
NOTE: This function only exists along with mission display (findDisplay 46). If this function is called before with -skipIntro parameter enabled (see Arma 3: Startup Parameters) it will result as Void.