ich rufe über einen Button ein XbpCrt Fenster auf,
Code: Alles auswählen
oBtn:activate := {|| ButtonAus(aChildlist),StartBild(),ButtonAn(aChildlist) }
Code: Alles auswählen
#include "Directry.ch"
#include "Appevent.ch"
#include "xbp.ch"
#include "Common.ch"
#include "inkey.ch"
#pragma library("XppUi2")
#define DEF_ROWS 25
#define DEF_COLS 80
#define DEF_FONTHEIGHT 32
#define DEF_FONTWIDTH 16
PROCEDURE Startbild
LOCAL oXbp
LOCAL oBtn
local cKey
LOCAL oCrt
LOCAL aChildList
LOCAL aSizeDesktop, aPos
LOCAL nPos1, nPos2
LOCAL nEvent
aSizeDesktop := AppDesktop():currentSize()
aPos := { (aSizeDesktop[1]-(DEF_COLS * DEF_FONTWIDTH)) /2, ;
(aSizeDesktop[2]-(DEF_ROWS * DEF_FONTHEIGHT)) /2 }
// XbpCRT-Fenster erzeugen
oCrt := XbpCrt():New ( NIL, NIL, aPos, DEF_ROWS, DEF_COLS )
oCrt:FontWidth := DEF_FONTWIDTH
oCrt:FontHeight := DEF_FONTHEIGHT
oCrt:title := "StartBild"
oCrt:FontName := "Alaska Crt"
oCrt:border := XBPDLG_NO_BORDER
oCrt:create( AppDesktop() )
// Presentation Space initialisieren
oCrt:PresSpace()
// XbpCrt wird aktives Fenster und Ausgabeger„t
SetAppWindow ( oCrt )
oXbp:=SetAppWindow()
nPos1:=oCrt:XSize/2
nPos2:=oCrt:YSize/2
SetColor("gr+/bg")
CLS
oBtn := XbpPushButton():new( oCrt, , {nPos1+10 ,nPos2-30} )
oBtn:caption := "Hallo"
oBtn:autoSize := .T.
oBtn:activate:= {|| AppEnde(oCrt) }
oBtn:create()
aChildlist:=oCrt:childlist()
DO WHILE nEvent <> xbeP_None
nEvent := AppEvent( @mp1, @mp2, @oXbp, 0 )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
PROCEDURE AppEnde(oCrt)
oCrt:destroy()
RETURN