GuiCreateButton: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
mNo edit summary
 
(29 intermediate revisions by 10 users not shown)
Line 1: Line 1:
__NOTOC__  
__NOTOC__  
This function is for creating a new GUI button
{{Client function}}
 
This function allows creation of a GUI Button, which is a clickable item as part of GUI.
==Syntax==  
==Syntax==  
<syntaxhighlight lang="lua">
<syntaxhighlight lang="lua">
element guiCreateButton ( float x, float y, float width, float height, string text, bool relative, [element parent, callback on_click ] )
element guiCreateButton ( float x, float y, float width, float height, string text, [ bool relative = false, gui-element parent = nil ] )
</syntaxhighlight>  
</syntaxhighlight>  
{{OOP||[[Element/GUI/Button|GuiButton]]}}


===Required Arguments===  
===Required Arguments===  
<!-- List each argument one per line. This should be the argument's name as in the argument list above, NOT the argument's data type -->
[[Image:Button.png|thumb|GUI Test Button]]
*'''argumentName:''' description
*'''x:''' A float of the 2D x position of the GUI button on a player's screen. This is affected by the ''relative'' argument.
*'''y:''' A float of the 2D y position of the GUI button on a player's screen. This is affected by the ''relative'' argument.
*'''width:''' A float of the width of the GUI button. This is affected by the ''relative'' argument.
*'''height:''' A float of the height of the GUI button. This is affected by the ''relative'' argument.
*'''text:''' A string of the text that will be displayed as a label on the button.


<!-- Only include this section below if there are optional arguments -->
===Optional Arguments===  
===Optional Arguments===  
{{OptionalArg}}  
{{OptionalArg}}  
*'''argumentName2:''' description
*'''relative:''' This is whether sizes and positioning are relative.  If this is ''true'', then all ''x, y, width'' and ''height'' floats must be between 0 and 1, representing sizes relative to the parent.
*'''argumentName3:''' description
*'''parent:''' This is the parent that the gui button is attached to.  If the ''relative'' argument is true, sizes and positioning will be made relative to this parent. If the ''relative'' argument is false, positioning will be the number of offset pixels from the parent's origin. If no parent is passed, the parent will become the screen - causing positioning and sizing according to screen positioning.


===Returns===
===Returns===
<!-- Make this descriptive. Explain what cases will return false. If you're unsure, add a tag to it so we can check -->
Returns an [[element]] of the created [[Element/GUI/Button|button]] if it was successfully created, false otherwise.
Returns ''true'' if blah, ''false'' otherwise.


==Example==  
==Example==  
<!-- Explain what the example is in a single sentance -->
This example creates an edit box alongside an "Output!" button. When the button is clicked, it will output the message in the edit box into the Chat Box.
This example does...
<!-- Add the code below, an emphasis should be on making it clear, not optimized. You could provide two versions if you wish, one clear and well commented, the other optimized -->
<syntaxhighlight lang="lua">
<syntaxhighlight lang="lua">
--This line does...
--create our button
blabhalbalhb --abababa
button = guiCreateButton( 0.7, 0.1, 0.2, 0.1, "Output!", true )
--This line does this...
--Create an edit box and define it as "editBox".
mooo
editBox = guiCreateEdit( 0.3, 0.1, 0.4, 0.1, "Type your message here!", true )
-- and attach our button to the outputEditBox function
addEventHandler ( "onClientGUIClick", editBox, outputEditBox )
guiEditSetMaxLength ( editBox, 128 ) --the max chatbox length is 128, so force this
 
--setup our function to output the message to the chatbox
function outputEditBox ()
        local text = guiGetText ( editBox )--get the text from the edit box
        outputChatBox ( text ) --output that text
end
addEventHandler ( "onClientGUIClick", button, outputEditBox )
</syntaxhighlight>
</syntaxhighlight>


==See Also==
==See Also==
<!-- Change FunctionArea to the area that this function is in on the main function list page, e.g. Server, Player, Vehicle etc -->
{{GUI_functions}}
{{GUI_functions}}
[[Category:Incomplete]] -- leave this unless you complete the function
[[ru:guiCreateButton]]
{{GUI_events}}

Latest revision as of 08:09, 30 October 2023

This function allows creation of a GUI Button, which is a clickable item as part of GUI.

Syntax

element guiCreateButton ( float x, float y, float width, float height, string text, [ bool relative = false, gui-element parent = nil ] )

OOP Syntax Help! I don't understand this!

Method: GuiButton(...)


Required Arguments

GUI Test Button
  • x: A float of the 2D x position of the GUI button on a player's screen. This is affected by the relative argument.
  • y: A float of the 2D y position of the GUI button on a player's screen. This is affected by the relative argument.
  • width: A float of the width of the GUI button. This is affected by the relative argument.
  • height: A float of the height of the GUI button. This is affected by the relative argument.
  • text: A string of the text that will be displayed as a label on the button.

Optional Arguments

NOTE: When using optional arguments, you might need to supply all arguments before the one you wish to use. For more information on optional arguments, see optional arguments.

  • relative: This is whether sizes and positioning are relative. If this is true, then all x, y, width and height floats must be between 0 and 1, representing sizes relative to the parent.
  • parent: This is the parent that the gui button is attached to. If the relative argument is true, sizes and positioning will be made relative to this parent. If the relative argument is false, positioning will be the number of offset pixels from the parent's origin. If no parent is passed, the parent will become the screen - causing positioning and sizing according to screen positioning.

Returns

Returns an element of the created button if it was successfully created, false otherwise.

Example

This example creates an edit box alongside an "Output!" button. When the button is clicked, it will output the message in the edit box into the Chat Box.

--create our button
button = guiCreateButton( 0.7, 0.1, 0.2, 0.1, "Output!", true )
--Create an edit box and define it as "editBox".
editBox = guiCreateEdit( 0.3, 0.1, 0.4, 0.1, "Type your message here!", true )
-- and attach our button to the outputEditBox function
addEventHandler ( "onClientGUIClick", editBox, outputEditBox )
guiEditSetMaxLength ( editBox, 128 ) --the max chatbox length is 128, so force this

--setup our function to output the message to the chatbox
function outputEditBox ()
        local text = guiGetText ( editBox )--get the text from the edit box
        outputChatBox ( text ) --output that text
end
addEventHandler ( "onClientGUIClick", button, outputEditBox )

See Also

General functions

Browsers

Buttons

Checkboxes

Comboboxes

Edit Boxes

Gridlists

Memos

Progressbars

Radio Buttons

Scrollbars

Scrollpanes

Static Images

Tab Panels

Tabs

Text Labels

Windows

Input

GUI