Tabelle
Mehrere Werte je Zeile, unter Überschriften, mit Knöpfen rechts.
Table
Clientexports.cs_menu:Table(table) Öffnet eine Tabelle. Sie nimmt Maus und Tastatur, solange sie offen ist, weil ein Fenster mit Knöpfen, das den Klick auch ans Spiel gibt, eine Waffe abfeuert.
Gibt zurückstring die ID
exports.cs_menu:Table({
title = 'Employees',
columns = {
{ key = 'name', label = 'Employee Name', width = 2 },
{ key = 'grade', label = 'Grade', style = 'chip' },
{ actions = true },
},
rows = {
{ name = 'Romario Richardson', grade = 'Chief of Police',
identifier = 'char1:9f2a', -- yours, handed straight back
actions = {
{ label = 'Promote', value = 'promote' },
{ label = 'Fire', value = 'fire', style = 'danger' },
} },
},
onSelect = function(index, row, action)
print(row.identifier, action and action.value)
end,
})SetRows
Clientexports.cs_menu:SetRows(id, rows, selected) Neue Zeilen unter einer offenen Tabelle. Eigener Export statt SetOptions, weil die Knöpfe aus deinen Zeilen antworten.
Gibt zurückboolean false, wenn keine Tabelle mit der ID offen ist
Eine Tabelle schließt beim Knopfdruck nicht, eine Liste schon. Du arbeitest sie durch, einen befördern, einen anderen entlassen. close = true an einem Knopf, der die Arbeit beendet.
Spalten
keystringlabelstringwidthnumber= 1alignstringleft, center, rightstylestringchip in einer kleinen Kachel, soft gedimmt.actionsbooleanZeilen und Knöpfe
Eine Zelle wird auf drei Arten gefunden, gemischt erlaubt: cells = { 'Bob', 'Chief' } in Spaltenreihenfolge, cells = { name = 'Bob' } unter dem Schlüssel der Spalte, oder name = 'Bob' direkt auf der Zeile. Das Letzte lässt eine bestehende Liste unverändert funktionieren.
icon / svgstringdisabledbooleanonSelectfunction(row)actions[]tablelabel, value, style = 'danger', icon, disabled, close, onSelect(row, value), oder event / serverEvent mit args. Ohne args bekommt das Event die Zeile.Das Fenster
widthnumber= Config.Table.widthperPagenumber= Config.Table.rowssearchboolean | number= Config.Table.searchpagesboolean= trueAus einem ESX-Script
Kein neuer Menütyp. Ein ESX-list-Menü mit einem Feld columns wird als Tabelle gezeichnet. data.current ist dein Element, data.action sagt welcher Knopf.
ESX.UI.Menu.Open('list', GetCurrentResourceName(), 'employees', {
title = 'Employees',
columns = {
{ key = 'name', label = 'Employee Name', width = 2 },
{ key = 'grade', label = 'Grade', style = 'chip' },
{ actions = true },
},
elements = {
{ name = 'Romario Richardson', grade = 'Chief of Police',
actions = { { label = 'Fire', value = 'fire', style = 'danger' } } },
},
},
function(data, menu)
print(data.current.name, data.action and data.action.value)
end,
function(data, menu) menu.close() end)