Garry's Mod Wiki

Revision Difference

PANEL:Paint#511084

<function name="Paint" parent="PANEL" type="hook">⤶ <ishook>yes</ishook>⤶ <description>⤶ Called whenever the panel should be drawn. ⤶ ⤶ You can create panels with a customized appearance by overriding their Paint() function, which will prevent the default appearance from being drawn.⤶ ⤶ <note>Render operations from the <page>surface</page> (and consequentially the <page>draw</page>) are always offset by the global position of this panel, as seen in the example below</note>⤶ ⤶ <note>This hook will not run if the panel is completely off the screen. The hook will still run however if any parts of the panel are still on screen.</note>⤶ </description>⤶ <realm>Client</realm>⤶ <predicted>No</predicted>⤶ <args>⤶ <arg name="width" type="number">The panel&#x27;s width.</arg>⤶ <arg name="height" type="number">The panel&#x27;s height.</arg>⤶ </args>⤶ <rets>⤶ <ret name="" type="boolean">Returning true prevents the background from being drawn.</ret>⤶ </rets>⤶ </function>⤶ ⤶ <example>⤶ <description>Creates a DPanel and overrides its Paint() function to draw a 100x100 pixel black rounded box in the center of the screen.</description>⤶ <code>⤶ local panel = vgui.Create( "DPanel" )⤶ panel:SetSize( 100, 100 )⤶ panel:SetPos( ScrW() / 2 - 50, ScrH() / 2 - 50 )⤶ ⤶ function panel:Paint( w, h )⤶ draw.RoundedBox( 8, 0, 0, w, h, Color( 0, 0, 0 ) )⤶ end⤶ </code>⤶ ⤶ </example>