guiSetPosition | Multi Theft Auto: Wiki Skip to content

guiSetPosition

Client-side
Server-side
Shared

Pair: guiGetPosition

This function sets the position of a GUI element.

OOP Syntax Help! I don't understand this!

  • Method:gui-element:setPosition(...)
  • Variable: .position

Syntax

bool guiSetPosition ( ​gui-element theElement, ​float x, ​float y, [ ​bool relative = false ] )
Required arguments
  • theElement: The GUI element to change position for.
  • x: Position over the X axis.
  • y: Position over the Y axis.
Optional arguments

Note: when using optional arguments, you might need to supply all arguments before the one you wish to use.

  • relative (default: false): Bool that indicates if the x/y positions are relative to the elements parent element.

Returns

Returns true if the position has been successfully set, false otherwise.

  • bool: result

Code Examples

client

This example creates a label. When an element is clicked, the label displays in the position of the element telling you what kind of element you have clicked. It hides after 5 seconds.

-- create an empty label
local myLabel = guiCreateLabel(0, 0, 1, 1, "", true)
local hidingTimer
function addLabelOnClick(button, state, absoluteX, absoluteY, worldX, worldY, worldZ, clickedElement)
-- if an MTA element was clicked on screen
if (clickedElement) then
-- retreive the element type
local elementType = getElementType(clickedElement)
-- change the label text to that element type
guiSetText(myLabel, elementType)
-- and place it in the position of where the element is
guiSetPosition(myLabel, absoluteX, absoluteY, false)
-- hide the text by passing an empty string 5 seconds later
if (not isTimer(hidingTimer)) then
hidingTimer = setTimer(guiSetText, 5000, 1, myLabel, "")
else
resetTimer(hidingTimer)
end
end
end
addEventHandler("onClientClick", root, addLabelOnClick)

See Also

GUI Functions