GuiGridListGetSelectedItems: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
(OOP syntax)
 
(7 intermediate revisions by 4 users not shown)
Line 2: Line 2:
__NOTOC__
__NOTOC__
This function returns the items selected in the specified [[Element/GUI/Gridlist|grid list]].
This function returns the items selected in the specified [[Element/GUI/Gridlist|grid list]].
Note that for some reason the column ID is 1 lower than it should be, for example 0 is returned but if you try and get the text for column 0 there is nothing, but column 1 has what you clicked on.


==Syntax==  
==Syntax==  
<syntaxhighlight lang="lua">
<syntaxhighlight lang="lua">
table guiGridListGetSelectedItems ( element gridList )
table guiGridListGetSelectedItems ( element gridList )
</syntaxhighlight>  
</syntaxhighlight>
{{OOP||[[Element/GUI/Gridlist|GuiGridList]]:getSelectedItems|selectedItems}}


===Required Arguments===  
===Required Arguments===  
Line 30: Line 33:
if everything was successful or ''false'' if invalid arguments were passed.
if everything was successful or ''false'' if invalid arguments were passed.


==Example==
==Example==
==Example==
<syntaxhighlight lang="lua">
<syntaxhighlight lang="lua">
-- This example creates a grid list of all players, clicking "Selected" button will then use guiGridListGetSelectedItems to show all selected items.
playerWindow = guiCreateWindow(526, 230, 291, 284, "", false)
playerWindow = guiCreateWindow(526, 230, 291, 284, "", false)
guiWindowSetSizable(playerWindow, false)
gridlistPlayers = guiCreateGridList(9, 23, 272, 201, false, playerWindow)
gridlistPlayers = guiCreateGridList(9, 23, 272, 201, false, playerWindow)
guiGridListAddColumn(gridlistPlayers, "Players", 0.9)
guiGridListAddColumn(gridlistPlayers, "Players", 0.9)
guiGridListSetSelectionMode(gridlistPlayers, 1) -- So can select many players
for _, players in ipairs(getElementsByType("player")) do  
for _, players in ipairs(getElementsByType("player")) do  
  local row = guiGridListAddRow(gridlistPlayers)
local row = guiGridListAddRow(gridlistPlayers)
  guiGridListSetItemText(gridlistPlayers, row, 1, getPlayerName(players), false, false)
guiGridListSetItemText(gridlistPlayers, row, 1, getPlayerName(players), false, false)
end  
end  
buttonSelectedPlayer = guiCreateButton(9, 227, 272, 20, "Selected", false, playerWindow)
buttonSelectedPlayer = guiCreateButton(9, 227, 272, 20, "Selected", false, playerWindow)
buttonClosePlayer = guiCreateButton(9, 254, 272, 20, "Close", false, playerWindow)


addEventHandler("onClientGUIClick", getRootElement(), function()
function seeSelected()
  if source == buttonSelectedPlayer then
local selected = guiGridListGetSelectedItems(gridlistPlayers)
      if #guiGridListGetSelectedItems(gridlistPlayers) > 0 then
for i, data in ipairs(selected) do -- Loops through all selected items
          outputChatBox("Yes")
outputChatBox(guiGridListGetItemText(gridlistPlayers, data["row"], 1)) -- Shows player name of selected players
      else
end
          outputChatBox("No")
end
      end  
addEventHandler("onClientGUIClick", buttonSelectedPlayer, seeSelected, false)
  end  
end)
</syntaxhighlight>
</syntaxhighlight>


==See Also==
==See Also==
{{GUI functions}}
{{GUI functions}}
[[Category:Needs Example]]
{{GUI_events}}

Latest revision as of 21:16, 7 November 2018

This function returns the items selected in the specified grid list.

Note that for some reason the column ID is 1 lower than it should be, for example 0 is returned but if you try and get the text for column 0 there is nothing, but column 1 has what you clicked on.

Syntax

table guiGridListGetSelectedItems ( element gridList )

OOP Syntax Help! I don't understand this!

Method: GuiGridList:getSelectedItems(...)
Variable: .selectedItems


Required Arguments

  • gridList: The grid list which selected items you want to retrieve.

Returns

Returns a table over the selected items in the grid list in this format:

table = {
    [1] = {
        ["column"], -- has the first selected item's column ID
        ["row"] -- has the first selected item's row ID
    },
    [2] = {
        ["column"],-- has the second selected item's column ID
        ["row"] -- has the second selected item's row ID
    },
    ...
}


if everything was successful or false if invalid arguments were passed.

Example

Example

-- This example creates a grid list of all players, clicking "Selected" button will then use guiGridListGetSelectedItems to show all selected items.
playerWindow = guiCreateWindow(526, 230, 291, 284, "", false)
gridlistPlayers = guiCreateGridList(9, 23, 272, 201, false, playerWindow)
guiGridListAddColumn(gridlistPlayers, "Players", 0.9)
guiGridListSetSelectionMode(gridlistPlayers, 1) -- So can select many players
for _, players in ipairs(getElementsByType("player")) do 
	local row = guiGridListAddRow(gridlistPlayers)
	guiGridListSetItemText(gridlistPlayers, row, 1, getPlayerName(players), false, false)
end 
buttonSelectedPlayer = guiCreateButton(9, 227, 272, 20, "Selected", false, playerWindow)

function seeSelected()
	local selected = guiGridListGetSelectedItems(gridlistPlayers)
	for i, data in ipairs(selected) do -- Loops through all selected items
		outputChatBox(guiGridListGetItemText(gridlistPlayers, data["row"], 1)) -- Shows player name of selected players
	end
end
addEventHandler("onClientGUIClick", buttonSelectedPlayer, seeSelected, false)

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