GuiGridListGetItemText: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
mNo edit summary
Line 18: Line 18:
==Example==  
==Example==  
This example creates a player list on resource start, clicking on it will output the selected player name to the chatbox.
This example creates a player list on resource start, clicking on it will output the selected player name to the chatbox.
<syntaxhighlight lang="lua">
<syntaxhighlight lang="lua">function clientsideResourceStart ()
function createPlayerList ()
    local numberList = guiCreateGridList ( 0.80, 0.10, 0.15, 0.60, true ) --Create a gridlist
        -- Create the grid list
    local columnA = guiGridListAddColumn ( numberList, "columnA Title", 0.85 ) --Create a columnA on the gridlist
        playerList = guiCreateGridList ( 0.80, 0.10, 0.15, 0.60, true )
    rowA = guiGridListAddRow ( numberList )
        -- Create a players column in the list
    rowB = guiGridListAddRow ( numberList ) --Add 2 rows to the grid list
        local column = guiGridListAddColumn( playerList, "Player", 0.85 )
    guiGridListSetItemText ( numberList, rowA, columnA, "Hello", false, false )
        if ( column ) then        -- If the column has been created, fill it with players
    --Create the text "Hello" for rowA, columnA
                for id, playeritem in ipairs(getElementsByType("player")) do
    guiGridListSetItemText ( numberList, rowB, columnA, "World!", false, false )  
                        local row = guiGridListAddRow ( playerList )
    --Create the text "World!" for rowB, columnA
                        guiGridListSetItemText ( playerList, row, column, getPlayerName ( playeritem ), false, false )
getRandomItem = math.random ( 1, 2 )
                end
if getRandomItem == 1 then --Choose randomly which grid list item text to retrieve
                addEventHandler ( "onClientClick", playerList, click )
            randomItemData = guiGridListGetItemText ( numberList, rowA, columnA )
        end
elseif getRandomItem == 2 then
randomItemData = guiGridListGetItemText ( numberList, rowB, columnA )
end
outputChatBox ( "My gridlist item text: "..randomItemData ) --Output the randomly retrieved item text
end
end
addEventHandler ( "onClientResourceStart", getRootElement(), createPlayerList )
addEventHandler ( "onClientResourceStart", getRootElement(), clientsideResourceStart )</syntaxhighlight>
 
function click ( button, state, sx, sy, x, y, z, elem, gui )
        -- if state is down ( not to trigger the function twice on mouse button up/down), clicked gui and the element is our player list
        if ( ( state == "down" ) and ( gui == true ) and ( source == playerList ) ) then
                -- get the player name from the selected row, first column
                local playerName = guiGridListGetItemText ( playerList, guiGridListGetSelectedItem ( playerList ), 1 )
                outputChatBox ( playerName )    -- output it to chat box
        end
end
</syntaxhighlight>


==See Also==
==See Also==
{{GUI functions}}
{{GUI functions}}

Revision as of 06:45, 8 October 2007

This function retrieves the text from a specific grid list item.

Syntax

string guiGridListGetItemText ( element theElement, int rowIndex, int columnIndex )

Required Arguments

  • theElement: the gridlist containing the item you're interested in
  • rowIndex: row id of the item
  • columnIndex: column id of the item

Returns

Returns the text of the item if the arguments are right, false otherwise.

Example

This example creates a player list on resource start, clicking on it will output the selected player name to the chatbox.

function clientsideResourceStart ()
    local numberList = guiCreateGridList ( 0.80, 0.10, 0.15, 0.60, true ) --Create a gridlist
    local columnA = guiGridListAddColumn ( numberList, "columnA Title", 0.85 ) --Create a columnA on the gridlist
    rowA = guiGridListAddRow ( numberList )
    rowB = guiGridListAddRow ( numberList ) --Add 2 rows to the grid list
    guiGridListSetItemText ( numberList, rowA, columnA, "Hello", false, false ) 
    --Create the text "Hello" for rowA, columnA
    guiGridListSetItemText ( numberList, rowB, columnA, "World!", false, false ) 
    --Create the text "World!" for rowB, columnA
	getRandomItem = math.random ( 1, 2 )
	if getRandomItem == 1 then --Choose randomly which grid list item text to retrieve
    	        randomItemData = guiGridListGetItemText ( numberList, rowA, columnA )
	elseif getRandomItem == 2 then
		randomItemData = guiGridListGetItemText ( numberList, rowB, columnA )
	end
	outputChatBox ( "My gridlist item text: "..randomItemData ) --Output the randomly retrieved item text
end
addEventHandler ( "onClientResourceStart", getRootElement(), clientsideResourceStart )

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