From Garry's Mod
Revision as of 07:52, 5 January 2018 by Robotboy655 (Talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search



DIconLayout is what replaced DPanelList in Garry's Mod 13. DPanelList still exists in GMod but is deprecated and does not support the new GWEN skin.

DIconLayout is used to make a list of panels. Unlike DPanelList, DIconLayout does not automatically add a scroll bar - the example below shows you how you can do this.

Inherited Functions

Inherits the following functions from DDragBase and its parents up to 3 levels deep:



local Frame = vgui.Create( "DFrame" ) -- Create a Frame to contain everything.
Frame:SetTitle( "DIconLayout Example" )
Frame:SetSize( 365, 240 )

local Scroll = vgui.Create( "DScrollPanel", Frame ) -- Create the Scroll panel
Scroll:Dock( FILL )

local List = vgui.Create( "DIconLayout", Scroll )
List:Dock( FILL )
List:SetSpaceY( 5 ) -- Sets the space in between the panels on the Y Axis by 5
List:SetSpaceX( 5 ) -- Sets the space in between the panels on the X Axis by 5

for i = 1, 20 do -- Make a loop to create a bunch of panels inside of the DIconLayout
	local ListItem = List:Add( "DPanel" ) -- Add DPanel to the DIconLayout
	ListItem:SetSize( 80, 40 ) -- Set the size of it
	-- You don't need to set the position, that is done automatically.

local ListLabel = List:Add( "DLabel" ) -- Add a label that will be the only panel on its row
ListLabel.OwnLine = true -- The magic variable that specifies this item has its own line all for itself
ListLabel:SetText( "Hello World!" )

for i = 1, 5 do
	local ListItem = List:Add( "DPanel" )
	ListItem:SetSize( 80, 40 )

Personal tools