Anmelden

Archiv verlassen und diese Seite im Standarddesign anzeigen : VGui



Andrey
25.03.2008, 03:12
Ich habe angefangen lua zu lernen, und mache nun einige Test mit dem VGui/Derma u.s.w.

Ich wollte ein kleines Vgui fenster machen, mit folgendem Code:

function VGUITalk( )

local Frame = vgui.Create("Frame")
Frame:SetSize( 200, 200 )
Frame:SetPos( 100, 100 )
Frame:SetVisible( true )
Frame:MakePopup( )
Frame:PostMessage( "SetTitle", "text", "Test" )

local Field = vgui.Create( "TextEntry", Frame )
Field:SetText( "Insert Sound Path!" )
Field:SetPos( 30, 5 )
Field:SetWide( 100 )

end

concommand.Add( "vgui_open", VGUITalk )

Starte das ganze, und bekomme folgenden Fehler:


autorun/client/vgui.lua:3: attempt to index global 'vgui' (a nil value)

Scarecrow
25.03.2008, 03:34
Mach es lieber so (ändert vielleicht nichts am Problem):



local Frame = vgui.Create("Frame")
Frame:SetSize( 200, 200 )
Frame:SetPos( 100, 100 )
Frame:SetVisible( false )
Frame:PostMessage( "SetTitle", "text", "Test" )

local Field = vgui.Create( "TextEntry", Frame )
Field:SetText( "Insert Sound Path!" )
Field:SetPos( 30, 5 )
Field:SetWide( 100 )

function VGUITalk( )

Frame:SetVisible(true)

end

concommand.Add( "vgui_open", VGUITalk )

Andrey
25.03.2008, 04:02
Mach es lieber so (ändert vielleicht nichts am Problem):

<code>

Das bringt lediglich Ordnung ins Chaos. :)

Naja, einige haben erzählt, dass das VGui neue Funktionen benutzt, unter Anderem Derma, wobei ich am überlegen war, ob die vgui.create funktion weg ist?

Aber da ich mir nicht sicher bin, auf pac warten.

SMILIE
25.03.2008, 09:35
Das vgui.Create funktioniert auf jeden Fall noch, zumindest mit dem Derma Content.

In meinem Admin SWEP hab ich nämlich

Fenster = vgui.Create("DFrame");
und das funktioniert.

Vielleicht mag er den Namen der Variable Frame nicht, weil er genauso wie das Objekt heißt.

Pac_187
25.03.2008, 13:04
Ja versuch mal das Dermazeugs zu verwenden.

Deswegen hat Garry es ja auch eingerichtet ;)

Scarecrow
25.03.2008, 13:11
Das bringt lediglich Ordnung ins Chaos. :)


Dein Vgui wird net unnötig dupliziert. Das schafft Platz :D