Skip to content

system.messageBox

Displays a synchronous system modal dialog and returns the button the user clicked.

WARNING

This function blocks the calling thread until the user dismisses the dialog.

Signature

luau
function messageBox(message: string, title: string?, options: MessageBoxOptions?): MessageBoxResult

Types

luau
type MessageBoxOptions = {
    buttons: "ok" | "okcancel" | "yesno" | "yesnocancel",
}

type MessageBoxResult = "ok" | "cancel" | "yes" | "no"

Summary

Parameters

ParameterTypeDescription
messagestringThe message body to display in the dialog.
titlestring?Optional dialog title. Defaults to "".
optionsMessageBoxOptions?Optional configuration (button layout). Defaults to "ok".

Returns

ReturnTypeDescription
MessageBoxResultThe button that was clicked.

Example

luau
local system = require("@runtime/system")

local result = system.messageBox("Do you want to continue?", "Confirm", {
    buttons = "yesno",
})

if result == "yes" then
    print("User confirmed.")
else
    print("User declined.")
end
luau
local system = require("@runtime/system")

local result = system.messageBox("Operation completed")