DIconLayout
Açıklama
DIconLayout, Garry's Mod 13'te DPanelList'in yerini alan unsurdur. DPanelList, GMod'da hala mevcuttur ancak kullanımdan kaldırılmıştır ve yeni GWEN arayüzünü desteklememektedir.
DIconLayout, bir panel listesi oluşturmak için kullanılır. DPanelList'in aksine, DIconLayout otomatik olarak bir kaydırma çubuğu eklemez - aşağıdaki örnek bunu nasıl yapabileceğinizi gösterir.
Ebeveyn
Bu sayfada listelenmeyen metotları vb. DDragBase'den miras alır.
Olaylar
DIconLayout:OnModified()
Panel değiştirildiğinde çağrılır.
Metotlar
DIconLayout:CopyContents( Panel from )
Başka bir DIconLayout'un içeriğini (alt elemanlarını) kendisine kopyalar.
number DIconLayout:GetLayoutDir()
DOCK sıralamalarını kullanarak düzenleneceği yönü döndürür.
boolean DIconLayout:GetStretchHeight()
İkon düzeninin, tüm alt elemanlara sığacak şekilde yüksekliğini esnetip esnetmeyeceğini döndürür.
Ayrıca bakınız: DIconLayout:GetStretchWidth
boolean DIconLayout:GetStretchWidth()
İkon düzeninin, tüm alt elemanlara sığacak şekilde genişliğini esnetip esnetmeyeceğini döndürür.
Ayrıca bakınız: DIconLayout:GetStretchHeight
DIconLayout:Layout()
Panel:InvalidateLayout çağrılmadan önce düzen değişkenlerini sıfırlar. Bu, alt elemanlar eklendiğinde veya kaldırıldığında çağrılır ve aralık, kenarlık veya düzen yönü değiştirildiğinde çağrılmalıdır.
DIconLayout:LayoutIcons_LEFT()
Bu dahili olarak kullanılır - kullanabiliyor olsanız da muhtemelen kullanmamalısınız.
DIconLayout:SetLayoutDir, LEFT (Bkz. DOCK enum) olarak ayarlandıysa, alt elemanları düzenlemek için dahili olarak kullanılır.
DIconLayout:LayoutIcons_TOP()
Bu dahili olarak kullanılır - kullanabiliyor olsanız da muhtemelen kullanmamalısınız.
DIconLayout:SetLayoutDir, TOP (Bkz. DOCK enum) olarak ayarlandıysa, alt elemanları düzenlemek için dahili olarak kullanılır.
DIconLayout içindeki dahili kenarlığı (iç boşluk) ayarlar. Bu, panelin boyutunu değil, sadece alt elemanların konumlandırılmasını değiştirir. Değişikliklerin etkili olması için DIconLayout:Layout'u çağırmalısınız.
DIconLayout:SetLayoutDir( number direction )
DOCK enum'unu kullanarak düzenleneceği yönü ayarlar.
Şu anda yalnızca TOP ve LEFT desteklenmektedir.
DIconLayout içindeki alt elemanlar arasındaki yatay (x) boşluğu ayarlar. Değişikliklerin etkili olması için DIconLayout:Layout'u çağırmalısınız.
DIconLayout içindeki alt elemanlar arasındaki dikey (y) boşluğu ayarlar. Değişikliklerin etkili olması için DIconLayout:Layout'u çağırmalısınız.
DIconLayout:SetStretchHeight( boolean do_stretch )
Eğer true olarak ayarlanırsa, ikon düzeni tüm alt elemanlara sığacak şekilde yüksekliğini esnetir.
Ayrıca bakınız: DIconLayout:SetStretchWidth
DIconLayout:SetStretchWidth( boolean stretchW )
Eğer true olarak ayarlanırsa, ikon düzeni tüm alt elemanlara sığacak şekilde genişliğini esnetir.
Ayrıca bakınız: DIconLayout:SetStretchHeight
Örnek
local Frame = vgui.Create( "DFrame" ) -- Her şeyi içermesi için bir Çerçeve (Frame) oluştur.
Frame:SetTitle( "DIconLayout Örneği" )
Frame:SetSize( 365, 240 )
Frame:Center()
Frame:MakePopup()
local Scroll = vgui.Create( "DScrollPanel", Frame ) -- Kaydırma panelini (Scroll panel) oluştur.
Scroll:Dock( FILL )
local List = vgui.Create( "DIconLayout", Scroll )
List:Dock( FILL )
List:SetSpaceY( 5 ) -- Paneller arasındaki dikey boşluğu 5 olarak ayarlar.
List:SetSpaceX( 5 ) -- Paneller arasındaki yatay boşluğu 5 olarak ayarlar.
for i = 1, 20 do -- DIconLayout içinde bir dizi panel oluşturmak için bir döngü yap.
local ListItem = List:Add( "DPanel" ) -- DIconLayout'a bir DPanel ekle.
ListItem:SetSize( 80, 40 ) -- Boyutunu ayarla.
-- Konumu ayarlamanıza gerek yok, bu işlem otomatik olarak yapılır.
end
local ListLabel = List:Add( "DLabel" ) -- Kendi satırında tek başına duracak bir etiket ekle.
ListLabel.OwnLine = true -- Bu öğenin kendine ait bir satırı olmasını sağlayan sihirli değişken.
ListLabel:SetText( "Merhaba Dünya!" )
for i = 1, 5 do
local ListItem = List:Add( "DPanel" )
ListItem:SetSize( 80, 40 )
end
Çıktı: 

Tüm sunucular · GmodTR Launcher · Rehber · GMod Wiki · GmodTR nedir? · Sunucu ekle · Discord