|
Alle Tutorials sind in PreASS kompiliert. Aufgrund der starken
Ähnlichkeit zu C hier
eine kleine Übersicht der Unterschiede.
How to set a background image with NewGUI
Wie man ein Hintergrundbild in NewGUI setzt
Für dieses Beispiel und alle folgenden komplexeren Beispiele
braucht man die NEWGUI Defines. Die liegen im Archiv bei.
{* Include sources:newgui/generic/defines.i *} |
Wie üblich das Window öffnen:
Gui=Open_Window(150,100,600,200,"TESTWINDOW",0,0,0)
if gui#0
{ |
Erzeugt und plaziert das DEEPIMAGE in einem Zug
ab der Koordinate X=0 Y=0, also Links oben INNERHALB
des Fensterinhalts!
if (Deep=PlaceDeep(Gui,0,0,"background.deep"))#0
{ |
Setzt das Bild als Hintergrundbild per Tags :
UpdateGui(Gui,>PicTags:NG_BACKGROUND_IMAGE,*deep|TAG_done,null)
delay(100)
}
gui=Close_Window(gui) |
"und wieso gibt man das Deep nicht vor
dem Close_Window() wieder frei?"
"Weil bis zum Close_Window() das Hintergrundbild
bei Refreshes genutzt wird. Gibt man es nachher frei, ist das einfach
sicherer und die GUI Resource braucht man dazu auch nicht mehr!"
if deep#0 {
FreeDeep(Deep)
}
} |
Und wieder fertig...
; NEWGUI Demo
;
; (c) 2003 Cyborg
{* Include sys:coder/preass/Options.p *}
{* String: Version=": Demo2 (C) CYBORG 2003"*}
{* usefd:sys:coder/fd/newgui_lib.fd *}
{* Include sources:newgui/generic/defines.i *}
Start:
Gui=Open_Window(150,100,600,200,"TESTWINDOW",0,0,0)
if gui#0
{
if (Deep=PlaceDeep(Gui,0,0,"background.deep"))#0
{
UpdateGui(Gui,>PicTags:NG_BACKGROUND_IMAGE,*deep|TAG_done,null)
delay(100)
}
gui=Close_Window(gui)
if deep#0 {
FreeDeep(Deep)
}
}
{* return *} |
|