FForm

PropertyDatentyp(Read/Write)Hinweise
LeftInteger (R/W) Set/Get die Linke Position des Fensters
TopInteger (R/W) Set/Get die obere Position des Fensters
WidthInteger (R/W) Set/Get die Weite des Fensters
HeightInteger (R/W) Set/Get die Höhe des Fensters
ClientHeightInteger (R) Get die Höhe des Clientbereiches des Fensters
ClientWidthInteger (R) Get die Breite des Clientbereiches des Fensters
CaptionString (R/W) Set/Get den Fenstertitel
StyleUInteger (R/W) Set/Get Style des Fensters ; Voreingestell ist WS_VISIBLE Or WS_OVERLAPPEDWINDOW ( nicht zur Laufzeit )
ExStyleUInteger (R/W) Set/Get ExStyle des Fensters ; Voreingestell ist WS_EX_CONTROLPARENT ( nicht zur Laufzeit)
BorderIconInteger (W) Nur bei Border OVERLAPPEDWINDOW verwendbar
1 = löscht die MAXIMIZEBOX
2 = löscht die MINIMIZEBOX
3 = löscht beide
BorderInteger (W) 1 = OVERLAPPEDWINDOW ( voreingestellt)
2 = DLGFRAME
3 = TOOLWINDOW
4 = POPUP ohne Rand und Titelzeile
VisibleInteger (R/W) SW_SHOWNORMAL = Fenster sichtbar (voreingestellt) ; SW_HIDE = Fenster nicht sichtbar (True / False kann auch verwendet werden)
EnabledInteger (R/W) TRUE = Fenster aktiv (voreingestellt) ; FALSE = Fenster inaktiv
ColorUInteger (R/W) Hintergrundfarbe des Fenster ; voreingestellt ist weiss
HandleHWND (R) Handle des Fenster (nur lesen !)
IconString (W) Setzt ein Icon in die Titelzeile; Enthält der string ein Punkt (icon.ico) wird eine Datei (versucht) zu laden. Ohne Punkt wird eine Resource geladen
SUB ArgumenteHinweis
Create (sCaption As String,
ByVal x As Integer,
ByVal y As Integer,
ByVal w As Integer,
ByVal h As Integer )
Fenstertitel
Position links
Position Top
Weite
Höhe
Center keine Zentriert das Fenster auf dem Desktop
Show keine Muss immer als letzter Aufruf stehen ! Macht die Form sichtbar
FormClose keine Schliesst die Form und beendet das Programm
Event SUBArgumenteHinweis
onShow(ByVal w As UInteger)TRUE Fenster ist sichtbar
FALSE Fenster ist versteckt
onSize(ByVal w As Integer,
ByVal h As Integer,
ByVal flag As Integer)
w = weite des Clientbereiches
h = Höhe des Clientbereiches
Kann SIZE_MAXIMIZED,SIZE_MINIMIZED oder SIZE_RESTORED sein
onPaint(ByVal hDC As HDC) HDC des Fenster
onLbuttondown(ByVal x As Integer,
ByVal y As Integer,
ByVal flag As Integer)
x - Position im Clientbereich
y - Position im Clientbereich
ob und welcher virtual keys ist gedrückt(z.B.MK_CONTROL,MK_SHIFT)
onLbuttonup(ByVal x As Integer,
ByVal y As Integer,
ByVal flag As Integer)
x - Position im Clientbereich
y - Position im Clientbereich
ob und welcher virtual keys ist gedrückt(z.B.MK_CONTROL,MK_SHIFT)
onRbuttondown(ByVal x As Integer,
ByVal y As Integer,
ByVal flag As Integer)
x - Position im Clientbereich
y - Position im Clientbereich
ob und welcher virtual keys ist gedrückt(z.B.MK_CONTROL,MK_SHIFT)
onMousemove(ByVal x As Integer,
ByVal y As Integer,
ByVal flag As Integer)
x - Position im Clientbereich
y - Position im Clientbereich
ob und welcher virtual keys ist gedrückt(z.B.MK_CONTROL,MK_SHIFT)
onKeyDown(nKey AS Integer,
lKeyStatus As Integer)
Virtualkey Code
kann VK_SHIFT, VK_CONTROL oder VK_MENU (Alt) sein
onKeyUp(nKey AS Integer,
lKeyStatus As Integer)
Virtualkey Code
kann VK_SHIFT, VK_CONTROL oder VK_MENU (Alt) sein
onKeyChar(nKey AS Integer,
lKeyStatus As Integer)
Virtualkey Code
kann VK_SHIFT, VK_CONTROL oder VK_MENU (Alt) sein
onClosekeine Die Form wird geschlossen
onCommand(ByVal notify As Integer,
ByVal ID As Integer,
ByVal ctl As HWND)
Notification Code
ID des Menu, Control oder Accelerator
Beispiel 1:
    #Include "FBForms.bi" 	' FBForms.bi immer zuerst 
                            ' bindet andere Freebasic .bi wie z.B "windows.bi" ein

    Dim Shared As FForm form1

    Sub Form1_onSize(ByVal w As Integer, ByVal h As Integer,ByVal flag As Integer)
	   ' ander Control anpassen wenn Maximize oder Restore Ereignis
    End Sub

    form1.Create("Testform",0,0,870,720)
    Form1.Center
    Form1.Color = &Hefcb90
    Form1.onSize = @Form1_onSize


    '------ Show entält MessageLoop - muss immer am Ende sein ------------
    form1.Show
    End
    
Beispiel 2:
     #Include "FBForms.bi"

    Dim Shared As FForm PTR form1
    '---------------------------------------------------------------------'
    Sub Form1_onSize(ByVal w As Integer, ByVal h As Integer,ByVal flag As Integer)
	   ' ander Control anpassen wenn Maximize oder Restore Ereignis
    End Sub
    '---------------------------------------------------------------------'
    form1 = New FForm
    form1->Create("Testform",0,0,870,720)
    Form1->Center
    Form1->Color = &Hefcb90
    Form1->onSize = @Form1_onSize

    '------ Show entält MessageLoop - muss immer am Ende sein ------------
    form1->Show
    '------ Speicher bereinigen ------------
    Delete form1
    End