Fenster Beispiel (unlimitet)
Übersicht

![]() |
Mathias-KwiatkowskiBetreff: Fenster Beispiel (unlimitet) |
![]() Antworten mit Zitat ![]() |
---|---|---|
hallo habe hier mal etwas geproggt und möchte es euch mal geben, vieleicht braucht es der eine oder andere, miit diesem prog ist es möglich belibig viele fenster zu erstellen, und indem grafische oder auch gui elemente darzustellen. kopiert es euch und testet es mal, ihr könnt mir ja eure mitteilung hierzu schreben.
Code: [AUSKLAPPEN] ; Hi, habe eine lange Zeit hierfür gebraucht, vieleicht gefällt es ja den einen oder anderen, in der Funktion ; window_funktionen() könnt ihr etwas im fenster darstellen lasen ; di anderen functionen sind nur für Vortgeschrittene BB+ Progger die anderen Funktionen sind eigentlich nur dazu da ; um ein fenster zu erstellen oder um den hintergrund darzustellen, naja und das master Fenster eben, des mit dem menu ; ; Ich werde das Programm noch erweitern, MFG Mathias Kwiatkowski http://purechannel.ath.cx/purechannel ; msn: mathiasamiga@msn.com ; icq: 287245050 Global master_background Global window_gesammt Global event Global deskw=ClientWidth(Desktop()) Global deskh=ClientHeight(Desktop()) Global master_window=CreateWindow("PureChannel Online Portal",0,0,deskw,deskh-30,Desktop(),0) Global master_canvas=CreateCanvas(0,0,deskw,deskh-30,master_window) Global window.window Global menu_datei=CreateMenu("Datei",1,WindowMenu(master_window)) Global menu_neu=CreateMenu("Neues Fenster", 2,menu_datei) Global menu_beenden=CreateMenu("Beenden",3,menu_datei) UpdateWindowMenu master_window Type window Field window Field canvas Field background End Type master_win() New_Window("PureChannel",10,10,300,500,"0",17) ;so kann man fenster erschaffen New_Window("PureChannel Chat",10,10,400,500,"0",3) ; so auch Repeat event=WaitEvent(0) update_masterwindow() update_window() Delay 10 Until KeyDown(1) End Function New_Window(titel$,x,y,w,h,gruppe$,style) window.window=New window window\window=CreateWindow(titel$,x,y,w,h,master_window,style) window\canvas=CreateCanvas(0,0,w,h,window\window) window\background=CreateImage(256,256) SetGadgetLayout window\canvas,1,1,1,1 SetBuffer CanvasBuffer (window\canvas) vt=255 For t=0 To 255 Color 0,vt,vt vt=vt-1 Line 0,t,255,T Next GrabImage window\background,0,0 ResizeImage window\background,w,h Cls FlipCanvas window\canvas window_gesammt=window_gesammt+1 End Function Function update_window() For window.window=Each window SetBuffer CanvasBuffer (window\canvas) DrawImage window\background,0,0 window_funktionen() FlipCanvas window\canvas If event=$803 Then If ActiveWindow() =window\window Then FreeGadget ActiveWindow () Delete window.window window_gesammt=window_gesammt-1 Delay 100 Goto ok EndIf EndIf Next .ok End Function Function master_win() SetBuffer CanvasBuffer (master_canvas) master_background=CreateImage(256,256) For t=0 To 255 Color 0,0,T Line 0,t,255,T Next GrabImage master_background,0,0 ResizeImage master_background,deskw,deskh-30 End Function Function update_masterwindow() If event=$1001 Then Select EventData() Case 3 value=MenuChecked(menu_beenden) If value=0 Then End UpdateWindowMenu master_window Case 2 value=MenuChecked(menu_neu) If value=0 Then New_Window("Neues Fenster ( "+window_gesammt+" )",10,30,400,500,"0",3) UpdateWindowMenu master_window End Select EndIf SetBuffer CanvasBuffer (master_canvas) DrawImage master_background,0,0 FlipCanvas master_canvas End Function Function window_funktionen() If GadgetText (window\window)="PureChannel" Then ;| ;\ ; -Hier den Fensternamen Eingeben SetBuffer CanvasBuffer (window\canvas) Text 100,100,"Hallo" ; Und hierher alles was in dem Fenster Vorkommen soll. wenn mann mehrere Fenster hat dann einfach diese IF anweisung kopieren ; und unter EndIF wieder einfügen, den Tittel eingeben und naja ich denke ihr versteht es dann schon :D FlipCanvas window\canvas EndIf End Function |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group