Apprendre
Classe de moteur
UITableLayout

*Ce contenu est traduit en utilisant l'IA (Beta) et peut contenir des erreurs. Pour consulter cette page en anglais, clique ici.


Résumé
Membres hérités
Échantillons de code
Construire un tableau UI
local frame = script.Parent
-- Données du tableau
local headerWidth = { 200, 80, 80 }
local headers = {
"Nom",
"Emploi",
"Argent",
}
local data = {
{ "Bob", "Serveur", 100 },
{ "Lisa", "Policière", 200 },
{ "George", "-", 50 },
}
-- Tout d'abord, construisez la mise en page du tableau
local uiTableLayout = Instance.new("UITableLayout")
uiTableLayout.FillDirection = Enum.FillDirection.Vertical
uiTableLayout.HorizontalAlignment = Enum.HorizontalAlignment.Center
uiTableLayout.VerticalAlignment = Enum.VerticalAlignment.Center
uiTableLayout.FillEmptySpaceColumns = false
uiTableLayout.FillEmptySpaceRows = false
uiTableLayout.Padding = UDim2.new(0, 5, 0, 5)
uiTableLayout.SortOrder = Enum.SortOrder.LayoutOrder
frame.Size = UDim2.new(0, 0, 0, 40) -- La taille du cadre parent est la taille de la cellule
uiTableLayout.Parent = frame
-- Ensuite, créez les en-têtes de colonnes
local headerFrame = Instance.new("Frame")
headerFrame.Name = "En-têtes"
headerFrame.Parent = frame
for i = 1, #headers do
local headerText = headers[i]
local headerCell = Instance.new("TextLabel")
headerCell.Text = headerText
headerCell.Name = headerText
headerCell.LayoutOrder = i
headerCell.Size = UDim2.new(0, 0, 0, 24)
headerCell.Parent = headerFrame
local headerSize = Instance.new("UISizeConstraint")
headerSize.MinSize = Vector2.new(headerWidth[i], 0)
headerSize.Parent = headerCell
end
-- Enfin, ajoutez des lignes de données en itérant sur chaque ligne et les colonnes de cette ligne
for index, value in ipairs(data) do
local rowData = value
local rowFrame = Instance.new("Frame")
rowFrame.Name = "Ligne" .. index
rowFrame.Parent = frame
for col = 1, #value do
local cellData = rowData[col]
local cell = Instance.new("TextLabel")
cell.Text = cellData
cell.Name = headers[col]
cell.TextXAlignment = Enum.TextXAlignment.Left
if tonumber(cellData) then -- Si cette cellule est un nombre, alignez-la à droite à la place
cell.TextXAlignment = Enum.TextXAlignment.Right
end
cell.ClipsDescendants = true
cell.Size = UDim2.new(0, 0, 0, 24)
cell.Parent = rowFrame
end
end

Référence API
Propriétés
FillEmptySpaceColumns
Lecture parallèle
Capacités : UI
UITableLayout.FillEmptySpaceColumns:boolean
Échantillons de code
Construire un tableau UI
local frame = script.Parent
-- Données du tableau
local headerWidth = { 200, 80, 80 }
local headers = {
"Nom",
"Emploi",
"Argent",
}
local data = {
{ "Bob", "Serveur", 100 },
{ "Lisa", "Policière", 200 },
{ "George", "-", 50 },
}
-- Tout d'abord, construisez la mise en page du tableau
local uiTableLayout = Instance.new("UITableLayout")
uiTableLayout.FillDirection = Enum.FillDirection.Vertical
uiTableLayout.HorizontalAlignment = Enum.HorizontalAlignment.Center
uiTableLayout.VerticalAlignment = Enum.VerticalAlignment.Center
uiTableLayout.FillEmptySpaceColumns = false
uiTableLayout.FillEmptySpaceRows = false
uiTableLayout.Padding = UDim2.new(0, 5, 0, 5)
uiTableLayout.SortOrder = Enum.SortOrder.LayoutOrder
frame.Size = UDim2.new(0, 0, 0, 40) -- La taille du cadre parent est la taille de la cellule
uiTableLayout.Parent = frame
-- Ensuite, créez les en-têtes de colonnes
local headerFrame = Instance.new("Frame")
headerFrame.Name = "En-têtes"
headerFrame.Parent = frame
for i = 1, #headers do
local headerText = headers[i]
local headerCell = Instance.new("TextLabel")
headerCell.Text = headerText
headerCell.Name = headerText
headerCell.LayoutOrder = i
headerCell.Size = UDim2.new(0, 0, 0, 24)
headerCell.Parent = headerFrame
local headerSize = Instance.new("UISizeConstraint")
headerSize.MinSize = Vector2.new(headerWidth[i], 0)
headerSize.Parent = headerCell
end
-- Enfin, ajoutez des lignes de données en itérant sur chaque ligne et les colonnes de cette ligne
for index, value in ipairs(data) do
local rowData = value
local rowFrame = Instance.new("Frame")
rowFrame.Name = "Ligne" .. index
rowFrame.Parent = frame
for col = 1, #value do
local cellData = rowData[col]
local cell = Instance.new("TextLabel")
cell.Text = cellData
cell.Name = headers[col]
cell.TextXAlignment = Enum.TextXAlignment.Left
if tonumber(cellData) then -- Si cette cellule est un nombre, alignez-la à droite à la place
cell.TextXAlignment = Enum.TextXAlignment.Right
end
cell.ClipsDescendants = true
cell.Size = UDim2.new(0, 0, 0, 24)
cell.Parent = rowFrame
end
end

FillEmptySpaceRows
Lecture parallèle
Capacités : UI
UITableLayout.FillEmptySpaceRows:boolean
Échantillons de code
Construire un tableau UI
local frame = script.Parent
-- Données du tableau
local headerWidth = { 200, 80, 80 }
local headers = {
"Nom",
"Emploi",
"Argent",
}
local data = {
{ "Bob", "Serveur", 100 },
{ "Lisa", "Policière", 200 },
{ "George", "-", 50 },
}
-- Tout d'abord, construisez la mise en page du tableau
local uiTableLayout = Instance.new("UITableLayout")
uiTableLayout.FillDirection = Enum.FillDirection.Vertical
uiTableLayout.HorizontalAlignment = Enum.HorizontalAlignment.Center
uiTableLayout.VerticalAlignment = Enum.VerticalAlignment.Center
uiTableLayout.FillEmptySpaceColumns = false
uiTableLayout.FillEmptySpaceRows = false
uiTableLayout.Padding = UDim2.new(0, 5, 0, 5)
uiTableLayout.SortOrder = Enum.SortOrder.LayoutOrder
frame.Size = UDim2.new(0, 0, 0, 40) -- La taille du cadre parent est la taille de la cellule
uiTableLayout.Parent = frame
-- Ensuite, créez les en-têtes de colonnes
local headerFrame = Instance.new("Frame")
headerFrame.Name = "En-têtes"
headerFrame.Parent = frame
for i = 1, #headers do
local headerText = headers[i]
local headerCell = Instance.new("TextLabel")
headerCell.Text = headerText
headerCell.Name = headerText
headerCell.LayoutOrder = i
headerCell.Size = UDim2.new(0, 0, 0, 24)
headerCell.Parent = headerFrame
local headerSize = Instance.new("UISizeConstraint")
headerSize.MinSize = Vector2.new(headerWidth[i], 0)
headerSize.Parent = headerCell
end
-- Enfin, ajoutez des lignes de données en itérant sur chaque ligne et les colonnes de cette ligne
for index, value in ipairs(data) do
local rowData = value
local rowFrame = Instance.new("Frame")
rowFrame.Name = "Ligne" .. index
rowFrame.Parent = frame
for col = 1, #value do
local cellData = rowData[col]
local cell = Instance.new("TextLabel")
cell.Text = cellData
cell.Name = headers[col]
cell.TextXAlignment = Enum.TextXAlignment.Left
if tonumber(cellData) then -- Si cette cellule est un nombre, alignez-la à droite à la place
cell.TextXAlignment = Enum.TextXAlignment.Right
end
cell.ClipsDescendants = true
cell.Size = UDim2.new(0, 0, 0, 24)
cell.Parent = rowFrame
end
end

MajorAxis
Lecture parallèle
Capacités : UI
UITableLayout.MajorAxis:Enum.TableMajorAxis
Échantillons de code
Construire un tableau UI
local frame = script.Parent
-- Données du tableau
local headerWidth = { 200, 80, 80 }
local headers = {
"Nom",
"Emploi",
"Argent",
}
local data = {
{ "Bob", "Serveur", 100 },
{ "Lisa", "Policière", 200 },
{ "George", "-", 50 },
}
-- Tout d'abord, construisez la mise en page du tableau
local uiTableLayout = Instance.new("UITableLayout")
uiTableLayout.FillDirection = Enum.FillDirection.Vertical
uiTableLayout.HorizontalAlignment = Enum.HorizontalAlignment.Center
uiTableLayout.VerticalAlignment = Enum.VerticalAlignment.Center
uiTableLayout.FillEmptySpaceColumns = false
uiTableLayout.FillEmptySpaceRows = false
uiTableLayout.Padding = UDim2.new(0, 5, 0, 5)
uiTableLayout.SortOrder = Enum.SortOrder.LayoutOrder
frame.Size = UDim2.new(0, 0, 0, 40) -- La taille du cadre parent est la taille de la cellule
uiTableLayout.Parent = frame
-- Ensuite, créez les en-têtes de colonnes
local headerFrame = Instance.new("Frame")
headerFrame.Name = "En-têtes"
headerFrame.Parent = frame
for i = 1, #headers do
local headerText = headers[i]
local headerCell = Instance.new("TextLabel")
headerCell.Text = headerText
headerCell.Name = headerText
headerCell.LayoutOrder = i
headerCell.Size = UDim2.new(0, 0, 0, 24)
headerCell.Parent = headerFrame
local headerSize = Instance.new("UISizeConstraint")
headerSize.MinSize = Vector2.new(headerWidth[i], 0)
headerSize.Parent = headerCell
end
-- Enfin, ajoutez des lignes de données en itérant sur chaque ligne et les colonnes de cette ligne
for index, value in ipairs(data) do
local rowData = value
local rowFrame = Instance.new("Frame")
rowFrame.Name = "Ligne" .. index
rowFrame.Parent = frame
for col = 1, #value do
local cellData = rowData[col]
local cell = Instance.new("TextLabel")
cell.Text = cellData
cell.Name = headers[col]
cell.TextXAlignment = Enum.TextXAlignment.Left
if tonumber(cellData) then -- Si cette cellule est un nombre, alignez-la à droite à la place
cell.TextXAlignment = Enum.TextXAlignment.Right
end
cell.ClipsDescendants = true
cell.Size = UDim2.new(0, 0, 0, 24)
cell.Parent = rowFrame
end
end

Padding
Lecture parallèle
Capacités : UI
UITableLayout.Padding:UDim2
Échantillons de code
Construire un tableau UI
local frame = script.Parent
-- Données du tableau
local headerWidth = { 200, 80, 80 }
local headers = {
"Nom",
"Emploi",
"Argent",
}
local data = {
{ "Bob", "Serveur", 100 },
{ "Lisa", "Policière", 200 },
{ "George", "-", 50 },
}
-- Tout d'abord, construisez la mise en page du tableau
local uiTableLayout = Instance.new("UITableLayout")
uiTableLayout.FillDirection = Enum.FillDirection.Vertical
uiTableLayout.HorizontalAlignment = Enum.HorizontalAlignment.Center
uiTableLayout.VerticalAlignment = Enum.VerticalAlignment.Center
uiTableLayout.FillEmptySpaceColumns = false
uiTableLayout.FillEmptySpaceRows = false
uiTableLayout.Padding = UDim2.new(0, 5, 0, 5)
uiTableLayout.SortOrder = Enum.SortOrder.LayoutOrder
frame.Size = UDim2.new(0, 0, 0, 40) -- La taille du cadre parent est la taille de la cellule
uiTableLayout.Parent = frame
-- Ensuite, créez les en-têtes de colonnes
local headerFrame = Instance.new("Frame")
headerFrame.Name = "En-têtes"
headerFrame.Parent = frame
for i = 1, #headers do
local headerText = headers[i]
local headerCell = Instance.new("TextLabel")
headerCell.Text = headerText
headerCell.Name = headerText
headerCell.LayoutOrder = i
headerCell.Size = UDim2.new(0, 0, 0, 24)
headerCell.Parent = headerFrame
local headerSize = Instance.new("UISizeConstraint")
headerSize.MinSize = Vector2.new(headerWidth[i], 0)
headerSize.Parent = headerCell
end
-- Enfin, ajoutez des lignes de données en itérant sur chaque ligne et les colonnes de cette ligne
for index, value in ipairs(data) do
local rowData = value
local rowFrame = Instance.new("Frame")
rowFrame.Name = "Ligne" .. index
rowFrame.Parent = frame
for col = 1, #value do
local cellData = rowData[col]
local cell = Instance.new("TextLabel")
cell.Text = cellData
cell.Name = headers[col]
cell.TextXAlignment = Enum.TextXAlignment.Left
if tonumber(cellData) then -- Si cette cellule est un nombre, alignez-la à droite à la place
cell.TextXAlignment = Enum.TextXAlignment.Right
end
cell.ClipsDescendants = true
cell.Size = UDim2.new(0, 0, 0, 24)
cell.Parent = rowFrame
end
end

©2026 Société Roblox. Roblox, le logo Roblox et Powering Imagination font partie de nos marques déposées aux États-Unis et dans d'autres pays.