Klasa silnika
UITableLayout
*Ta zawartość została przetłumaczona przy użyciu narzędzi AI (w wersji beta) i może zawierać błędy. Aby wyświetlić tę stronę w języku angielskim, kliknij tutaj.
Podsumowanie
Właściwości
Członkowie odziedziczeni
7 odziedziczonych od: UIGridStyleLayout
57 odziedziczonych od: Instance
6 odziedziczonych od: Object
Przykłady kodu
Twórz tabelę UI
local frame = script.Parent
-- Dane tabeli
local headerWidth = { 200, 80, 80 }
local headers = {
"Nazwa",
"Zawód",
"Gotówka",
}
local data = {
{ "Bob", "Kelner", 100 },
{ "Lisa", "Policjant", 200 },
{ "George", "-", 50 },
}
-- Najpierw budujemy układ tabeli
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) -- Rozmiar rodzica ramki to rozmiar komórki
uiTableLayout.Parent = frame
-- Następnie tworzymy nagłówki kolumn
local headerFrame = Instance.new("Frame")
headerFrame.Name = "Nagłówki"
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
-- Na koniec dodajemy wiersze danych iterując przez każdy wiersz i kolumny w tym wierszu
for index, value in ipairs(data) do
local rowData = value
local rowFrame = Instance.new("Frame")
rowFrame.Name = "Wiersz" .. 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 -- Jeśli ta komórka jest liczbą, wyrównaj ją do prawej
cell.TextXAlignment = Enum.TextXAlignment.Right
end
cell.ClipsDescendants = true
cell.Size = UDim2.new(0, 0, 0, 24)
cell.Parent = rowFrame
end
endMateriały referencyjne dotyczące interfejsów API
Właściwości
FillEmptySpaceColumns
Przykłady kodu
Twórz tabelę UI
local frame = script.Parent
-- Dane tabeli
local headerWidth = { 200, 80, 80 }
local headers = {
"Nazwa",
"Zawód",
"Gotówka",
}
local data = {
{ "Bob", "Kelner", 100 },
{ "Lisa", "Policjant", 200 },
{ "George", "-", 50 },
}
-- Najpierw budujemy układ tabeli
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) -- Rozmiar rodzica ramki to rozmiar komórki
uiTableLayout.Parent = frame
-- Następnie tworzymy nagłówki kolumn
local headerFrame = Instance.new("Frame")
headerFrame.Name = "Nagłówki"
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
-- Na koniec dodajemy wiersze danych iterując przez każdy wiersz i kolumny w tym wierszu
for index, value in ipairs(data) do
local rowData = value
local rowFrame = Instance.new("Frame")
rowFrame.Name = "Wiersz" .. 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 -- Jeśli ta komórka jest liczbą, wyrównaj ją do prawej
cell.TextXAlignment = Enum.TextXAlignment.Right
end
cell.ClipsDescendants = true
cell.Size = UDim2.new(0, 0, 0, 24)
cell.Parent = rowFrame
end
endFillEmptySpaceRows
Przykłady kodu
Twórz tabelę UI
local frame = script.Parent
-- Dane tabeli
local headerWidth = { 200, 80, 80 }
local headers = {
"Nazwa",
"Zawód",
"Gotówka",
}
local data = {
{ "Bob", "Kelner", 100 },
{ "Lisa", "Policjant", 200 },
{ "George", "-", 50 },
}
-- Najpierw budujemy układ tabeli
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) -- Rozmiar rodzica ramki to rozmiar komórki
uiTableLayout.Parent = frame
-- Następnie tworzymy nagłówki kolumn
local headerFrame = Instance.new("Frame")
headerFrame.Name = "Nagłówki"
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
-- Na koniec dodajemy wiersze danych iterując przez każdy wiersz i kolumny w tym wierszu
for index, value in ipairs(data) do
local rowData = value
local rowFrame = Instance.new("Frame")
rowFrame.Name = "Wiersz" .. 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 -- Jeśli ta komórka jest liczbą, wyrównaj ją do prawej
cell.TextXAlignment = Enum.TextXAlignment.Right
end
cell.ClipsDescendants = true
cell.Size = UDim2.new(0, 0, 0, 24)
cell.Parent = rowFrame
end
endMajorAxis
Przykłady kodu
Twórz tabelę UI
local frame = script.Parent
-- Dane tabeli
local headerWidth = { 200, 80, 80 }
local headers = {
"Nazwa",
"Zawód",
"Gotówka",
}
local data = {
{ "Bob", "Kelner", 100 },
{ "Lisa", "Policjant", 200 },
{ "George", "-", 50 },
}
-- Najpierw budujemy układ tabeli
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) -- Rozmiar rodzica ramki to rozmiar komórki
uiTableLayout.Parent = frame
-- Następnie tworzymy nagłówki kolumn
local headerFrame = Instance.new("Frame")
headerFrame.Name = "Nagłówki"
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
-- Na koniec dodajemy wiersze danych iterując przez każdy wiersz i kolumny w tym wierszu
for index, value in ipairs(data) do
local rowData = value
local rowFrame = Instance.new("Frame")
rowFrame.Name = "Wiersz" .. 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 -- Jeśli ta komórka jest liczbą, wyrównaj ją do prawej
cell.TextXAlignment = Enum.TextXAlignment.Right
end
cell.ClipsDescendants = true
cell.Size = UDim2.new(0, 0, 0, 24)
cell.Parent = rowFrame
end
endPadding
Przykłady kodu
Twórz tabelę UI
local frame = script.Parent
-- Dane tabeli
local headerWidth = { 200, 80, 80 }
local headers = {
"Nazwa",
"Zawód",
"Gotówka",
}
local data = {
{ "Bob", "Kelner", 100 },
{ "Lisa", "Policjant", 200 },
{ "George", "-", 50 },
}
-- Najpierw budujemy układ tabeli
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) -- Rozmiar rodzica ramki to rozmiar komórki
uiTableLayout.Parent = frame
-- Następnie tworzymy nagłówki kolumn
local headerFrame = Instance.new("Frame")
headerFrame.Name = "Nagłówki"
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
-- Na koniec dodajemy wiersze danych iterując przez każdy wiersz i kolumny w tym wierszu
for index, value in ipairs(data) do
local rowData = value
local rowFrame = Instance.new("Frame")
rowFrame.Name = "Wiersz" .. 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 -- Jeśli ta komórka jest liczbą, wyrównaj ją do prawej
cell.TextXAlignment = Enum.TextXAlignment.Right
end
cell.ClipsDescendants = true
cell.Size = UDim2.new(0, 0, 0, 24)
cell.Parent = rowFrame
end
end