DgsCreateEdit: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
(Created page with "__NOTOC__ {{Client function}} This function allows creation of a GUI Button, which is a clickable item as part of GUI. ==Syntax== <syntaxhighlight lang="lua"> element guiCr...")
 
(update arguments names)
 
(17 intermediate revisions by 5 users not shown)
Line 1: Line 1:
__NOTOC__  
__NOTOC__  
{{Client function}}
{{Client function}}
This function allows creation of a GUI Button, which is a clickable item as part of GUI.
[[Image:Dx_5.PNG|frame|Example Dx edit field.]]
<table><tr><td valign=top height=80>
 
This function is for creating a new DGS edit box.  This is a text box in which the user can input text. Edit boxes only allow a single line of text. If you want to allow multiple lines of text create a memo box using [[dgsCreateMemo]].
 
</td></tr></table>


==Syntax==  
==Syntax==  
<syntaxhighlight lang="lua">
<syntaxhighlight lang="lua">
element guiCreateButton ( float x, float y, float width, float height, string text, bool relative, [ element parent = nil ] )
element dgsCreateEdit ( float x, float y, float width, float height, string text, bool relative [, element parent = nil, int textColor = FF000000, float scaleX = 1, float scaleY = 1,element bgImage = nil, int bgColor = 0xFFC8C8C8, bool selectMode = false ] )
</syntaxhighlight>  
</syntaxhighlight>  
{{OOP||[[Element/GUI/Button|GuiButton]]}}


===Required Arguments===  
===Required Arguments===  
[[Image:Button.png|thumb|GUI Test Button]]
*'''x:''' A float of the 2D x position of the DGS edit box on a player's screen.  This is affected by the ''relative'' argument.
*'''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 DGS edit box 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 DGS edit box. 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 DGS edit box. 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 by default in the edit box.
*'''text:''' A string of the text that will be displayed as a label on the button.
*'''relative:''' This is whether sizes and positioning are relative.  If this is ''true'', then all x,y,width,height floats must be between 0 and 1, representing measures relative to the parent.
*'''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.
 
===Optional Arguments===  
===Optional Arguments===  
{{OptionalArg}}  
{{OptionalArg}}  
*'''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.
*'''parent:''' This is the parent that the DGS edit box 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.
*'''textColor:''' An int of the color of the text.
*'''scaleX:''' A float of the multiplier of the width of the text.
*'''scaleY:''' A float of the multiplier of the height of the text.
*'''bgImage:''' A texture element of the background of the DGS edit box.
*'''bgColor:''' An int of the color of the background of the DGS edit box.
*'''selectMode :''' A bool of whether the select background color is above the text or under the text.


===Returns===
===Returns===
Returns an [[element]] of the created [[Element/GUI/Button|button]] if it was successfully created, false otherwise.
Returns a dgs-dxedit element of the created edit box if it was successfully created, false otherwise.


==Example==  
==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.
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.
<syntaxhighlight lang="lua">
<syntaxhighlight lang="lua">
DGS = exports.dgs
--create our button
--create our button
button = guiCreateButton( 0.7, 0.1, 0.2, 0.1, "Output!", true )
button = DGS:dgsCreateButton( 0.7, 0.1, 0.2, 0.1, "OK", true )
--Create an edit box and define it as "editBox".
--Create an edit box and define it as "editBox".
editBox = guiCreateEdit( 0.3, 0.1, 0.4, 0.1, "Type your message here!", true )
editBox = DGS:dgsCreateEdit( 0.3, 0.1, 0.4, 0.1, "", 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
--setup our function to output the message to the chatbox
function outputEditBox ()
function outputEditBox ( button, state )
         local text = guiGetText ( editBox )--get the text from the edit box
         local text = DGS:dgsGetText ( editBox )--get the text from the edit box
         outputChatBox ( text ) --output that text
         outputChatBox ( text ) --output that text
end
end
addEventHandler ( "onClientGUIClick", button, outputEditBox )
addEventHandler ( "onDgsMouseClick", button, outputEditBox )
 
</syntaxhighlight>
 
 
This example creates an edit box and sets the input focus so the player does not have to click before typing:
<syntaxhighlight lang="lua">
DGS = exports.dgs
local editBox = DGS:dgsCreateEdit( 0.3, 0.1, 0.4, 0.1, "", true )
DGS:dgsBringToFront( editBox )
DGS:dgsEditSetCaretPosition( editBox, 1 )
</syntaxhighlight>
 
Edit by: Senpai
This example masks the password:
<syntaxhighlight lang="lua">
DGS = exports.dgs
local editBox = DGS:dgsCreateEdit( 0.3, 0.1, 0.4, 0.1, "", true )
DGS:dgsSetProperty(editBox,"masked",true) --if its true then it will be masked
</syntaxhighlight>
</syntaxhighlight>


==See Also==
==See Also==
{{GUI_functions}}
{{DGSFUNCTIONS}}
[[ru:guiCreateButton]]

Latest revision as of 13:49, 16 February 2021

Example Dx edit field.

This function is for creating a new DGS edit box. This is a text box in which the user can input text. Edit boxes only allow a single line of text. If you want to allow multiple lines of text create a memo box using dgsCreateMemo.

Syntax

element dgsCreateEdit ( float x, float y, float width, float height, string text, bool relative [, element parent = nil, int textColor = FF000000, float scaleX = 1, float scaleY = 1,element bgImage = nil, int bgColor = 0xFFC8C8C8, bool selectMode = false ] )

Required Arguments

  • x: A float of the 2D x position of the DGS edit box on a player's screen. This is affected by the relative argument.
  • y: A float of the 2D y position of the DGS edit box on a player's screen. This is affected by the relative argument.
  • width: A float of the width of the DGS edit box. This is affected by the relative argument.
  • height: A float of the height of the DGS edit box. This is affected by the relative argument.
  • text: A string of the text that will be displayed by default in the edit box.
  • relative: This is whether sizes and positioning are relative. If this is true, then all x,y,width,height floats must be between 0 and 1, representing measures relative to the parent.

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.

  • parent: This is the parent that the DGS edit box 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.
  • textColor: An int of the color of the text.
  • scaleX: A float of the multiplier of the width of the text.
  • scaleY: A float of the multiplier of the height of the text.
  • bgImage: A texture element of the background of the DGS edit box.
  • bgColor: An int of the color of the background of the DGS edit box.
  • selectMode : A bool of whether the select background color is above the text or under the text.

Returns

Returns a dgs-dxedit element of the created edit box 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.

DGS = exports.dgs
--create our button
button = DGS:dgsCreateButton( 0.7, 0.1, 0.2, 0.1, "OK", true )
--Create an edit box and define it as "editBox".
editBox = DGS:dgsCreateEdit( 0.3, 0.1, 0.4, 0.1, "", true )

--setup our function to output the message to the chatbox
function outputEditBox ( button, state )
        local text = DGS:dgsGetText ( editBox )--get the text from the edit box
        outputChatBox ( text ) --output that text
end
addEventHandler ( "onDgsMouseClick", button, outputEditBox )


This example creates an edit box and sets the input focus so the player does not have to click before typing:

DGS = exports.dgs
local editBox = DGS:dgsCreateEdit( 0.3, 0.1, 0.4, 0.1, "", true )
DGS:dgsBringToFront( editBox )
DGS:dgsEditSetCaretPosition( editBox, 1 )

Edit by: Senpai This example masks the password:

DGS = exports.dgs
local editBox = DGS:dgsCreateEdit( 0.3, 0.1, 0.4, 0.1, "", true )
DGS:dgsSetProperty(editBox,"masked",true) --if its true then it will be masked

See Also

Custom Cursor Functions

Multi Language Supports

Animation

3D Element

3D Interface

3D Line

3D Image

3D Text

Browser

Button

Check Box

Combo Box

Custom Renderer

Edit

Detect Area

Drag'N Drop

Grid List

Image

Memo

Menu

Label

Layout

Line

Progress Bar

Radio Button

Scale Pane

Scroll Bar

Scroll Pane

Selector

Style

Switch Button

Tab Panel

Window

Basic Shape Plugins

Circle

Quadrilateral

Rounded Rectangle

Other Plugins

Blur Box

Canvas

Chart

Color Picker

Effect 3D

Gradient

Mask

Media Browser

Nine Slice

Object Preview Supports

Paste Handler

QRCode

Remote Image

Screen Source

SVG

Tooltips