AcceptDialog
继承: Window
< Viewport
< Node
< Object
A base dialog used for user notification.
描述
The default use of AcceptDialog is to allow it to only be accepted or closed, with the same result. However, the confirmed
and canceled
signals allow to make the two actions different, and the add_button
method allows to add custom buttons and actions.
属性
bool | dialog_autowrap |
bool | dialog_close_on_escape |
bool | dialog_hide_on_ok |
String | dialog_text |
bool | exclusive |
bool | keep_title_visible |
String | ok_button_text |
String | title |
bool | transient |
bool | visible |
bool | wrap_controls |
方法
Button | add_button ( text: String , right: bool = false, action: String = "" ) |
Button | add_cancel_button ( name: String ) |
Label | get_label ( ) |
Button | get_ok_button ( ) |
void | register_text_enter ( line_edit: LineEdit ) |
void | remove_button ( button: Button ) |
主题属性
信号
canceled ( )
Emitted when the dialog is closed or the button created with add_cancel_button
is pressed.
confirmed ( )
Emitted when the dialog is accepted, i.e. the OK button is pressed.
custom_action ( action: StringName
)
Emitted when a custom button is pressed. See add_button
.
属性说明
bool
dialog_autowrap = false
Sets autowrapping for the text in the dialog.
bool
dialog_close_on_escape = true
If true
, the dialog will be hidden when the escape key (@GlobalScope.KEY_ESCAPE
) is pressed.
bool
dialog_hide_on_ok = true
If true
, the dialog is hidden when the OK button is pressed. You can set it to false
if you want to do e.g. input validation when receiving the confirmed
signal, and handle hiding the dialog in your own logic.
Note: Some nodes derived from this class can have a different default value, and potentially their own built-in logic overriding this setting. For example FileDialog
defaults to false
, and has its own input validation code that is called when you press OK, which eventually hides the dialog if the input is valid. As such, this property can't be used in FileDialog
to disable hiding the dialog when pressing OK.
String
dialog_text = ""
The text displayed by the dialog.
String
ok_button_text = "OK"
The text displayed by the OK button (see get_ok_button
).
方法说明
Button
add_button ( text: String
, right: bool
= false, action: String
= "" )
Adds a button with label text
and a custom action
to the dialog and returns the created button. action
will be passed to the custom_action
signal when pressed.
If true
, right
will place the button to the right of any sibling buttons.
You can use remove_button
method to remove a button created with this method from the dialog.
Button
add_cancel_button ( name: String
)
Adds a button with label name
and a cancel action to the dialog and returns the created button.
You can use remove_button
method to remove a button created with this method from the dialog.
Label
get_label ( )
Returns the label used for built-in text.
Warning: This is a required internal node, removing and freeing it may cause a crash. If you wish to hide it or any of its children, use their CanvasItem.visible
property.
Button
get_ok_button ( )
Returns the OK Button
instance.
Warning: This is a required internal node, removing and freeing it may cause a crash. If you wish to hide it or any of its children, use their CanvasItem.visible
property.
void
register_text_enter ( line_edit: LineEdit
)
Registers a LineEdit
in the dialog. When the enter key is pressed, the dialog will be accepted.
void
remove_button ( button: Button
)
Removes the button
from the dialog. Does NOT free the button
. The button
must be a Button
added with add_button
or add_cancel_button
method. After removal, pressing the button
will no longer emit this dialog's custom_action
or canceled
signals.
主题属性说明
int
buttons_min_height = 0
The minimum height of each button in the bottom row (such as OK/Cancel) in pixels. This can be increased to make buttons with short texts easier to click/tap.
int
buttons_min_width = 0
The minimum width of each button in the bottom row (such as OK/Cancel) in pixels. This can be increased to make buttons with short texts easier to click/tap.
int
buttons_separation = 10
The size of the vertical space between the dialog's content and the button row.
StyleBox
panel
The panel that fills the background of the window.
本方法通常需要用户覆盖才能生效。
本方法无副作用,不会修改该实例的任何成员变量。
本方法除了能接受在此处描述的参数外,还能够继续接受任意数量的参数。
本方法用于构造某个类型。
调用本方法无需实例,可直接使用类名进行调用。
本方法描述的是使用本类型作为左操作数的有效运算符。
这个值是由下列位标志构成位掩码的整数。
无返回值。