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.

Kaynağı görüntüle

Ebeveyn

Bu sayfada listelenmeyen metotları vb. DDragBase'den miras alır.

Olaylar

DIconLayout:OnModified()
Panel değiştirildiğinde çağrılır.

Metotlar

Panel DIconLayout:Copy()
Üzerinde çağrıldığı DIconLayout'un bir kopyasını oluşturur.
DIconLayout:CopyContents( Panel from )
Başka bir DIconLayout'un içeriğini (alt elemanlarını) kendisine kopyalar.
number DIconLayout:GetBorder()
Kenarlığın boyutunu döndürür.
number DIconLayout:GetLayoutDir()
DOCK sıralamalarını kullanarak düzenleneceği yönü döndürür.
number DIconLayout:GetSpaceX()
X eksenindeki iki 'ikon' arasındaki mesafeyi döndürür.
number DIconLayout:GetSpaceY()
Y eksenindeki iki "İkon" arasındaki mesafeyi döndürür.
İ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:SetBorder( number width )
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:SetSpaceX( number xSpacing )
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:SetSpaceY( number ySpacing )
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