home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Programming Tool Box
/
SIMS_2.iso
/
bp_6_93
/
vbwin
/
gfadll
/
vbtest.frm
< prev
next >
Wrap
Text File
|
1993-01-05
|
5KB
|
142 lines
VERSION 2.00
Begin Form Form1
BorderStyle = 3 'Nicht Σnderbar, doppelt
Caption = "Windows-Programmierung mit Visual/GFA Basic"
Height = 5805
Left = 1035
LinkTopic = "Form1"
MaxButton = 0 'False
MinButton = 0 'False
ScaleHeight = 5400
ScaleWidth = 7275
Top = 1140
Width = 7395
Begin CommandButton Befehl5
Caption = "&Popup-Menⁿ"
Height = 555
Left = 5520
TabIndex = 4
Top = 2100
Width = 1635
End
Begin CommandButton Befehl4
Caption = "&Windows-Pfad"
Height = 555
Left = 5520
TabIndex = 3
Top = 2760
Width = 1635
End
Begin CommandButton Befehl3
Caption = "&Farbdialog"
Height = 555
Left = 5520
TabIndex = 2
Top = 3420
Width = 1635
End
Begin CommandButton Befehl2
Caption = "&Test"
Height = 555
Left = 5520
TabIndex = 1
Top = 4080
Width = 1635
End
Begin CommandButton Befehl1
Caption = "&Beenden"
Height = 555
Left = 5520
TabIndex = 0
Top = 4740
Width = 1635
End
End
'*****************************************************************
'* DLL-Programmierung fⁿr Visual Basic fⁿr Windows mit *
'* dem GFA-Basic-Compiler fⁿr Windows *
'* (c)1993 by Dipl.-Ing. Andreas Maslo *
'*****************************************************************
'Beispielprozeduren zur ErlΣuterung der Parameterⁿbergaben
'an DLL-Prozeduren, die mit GFA-Basic entwickelt wurden
'um Rⁿckgabewert von RETVAL entgegenzunehmen, mu▀ die ent-
'sprechende GFA-Basic-Prozedur als Funktion deklariert werden
Declare Function IntegerTest Lib "d:\gfawin\vbtest.dll" () As Integer
'Declare Function DoubleTest Lib "d:\gfawin\vbtest.dll" () As Double
'damit Parameter, die als Referenz ⁿbergeben werden unter Visual Basic
'fⁿr Windows Ergebnisse zurⁿckliefern k÷nnen, darf das Schlⁿsselwort
'ByVal NICHT verwendet werden
Declare Sub ReferenceTest Lib "d:\gfawin\vbtest.dll" (Erg#)
'ByVal bei der Zeichenkettenⁿbergabe bedeutet, da▀ an die
'DLL ein Zeichenketten-Deskriptor ⁿbergeben wird
Declare Sub StringTest Lib "d:\gfawin\vbtest.dll" (ByVal Text$)
'allgemeine Bibliotheksroutinen fⁿr Visual Basic fⁿr Windows
'die folgende Funktion liefert eine lange Ganzzahl zurⁿck, die
'einem RGB-Farbwert entspricht
Declare Function ColorDialog Lib "d:\gfawin\vbtest.dll" () As Long
'Ermittlung des Windows-Verzeichnisses
Declare Function WinDirectory Lib "d:\gfawin\vbtest.dll" (ByVal Pfad$) As Integer
'Anzeige eines Popup-Menⁿs
Declare Function Choose Lib "d:\gfawin\vbtest.dll" (ByVal Menue$) As Integer
Sub Befehl1_Click ()
End
End Sub
Sub Befehl2_Click ()
'Testaufrufe
'Ganzzahlen
Me.Print IntegerTest()
'Flie▀kommazahlen
ReferenceTest Erg#
Me.Print Erg#
'Zeichenketten
Text$ = "Hallo GFA-Basic fⁿr Windows..."
StringTest Text$
'die geΣnderte Variable Text$ ausgeben
Me.Print Text$
End Sub
Sub Befehl3_Click ()
'Farbdialog aufrufen
'diese Funktion kann alternativ zur VB-RGB-
'Funktion eingesetzt werden, wenn ein RGB-
'Farbwert zur Laufzeit vom Anwender bestimmt
'werden soll; hier wird lediglich der Form-
'hintergrund neu eingefΣrbt
FarbWert& = ColorDialog&()
Me.BackColor = FarbWert&
End Sub
Sub Befehl4_Click ()
'Windows-Verzeichnis ermitteln und in einem
'Meldungsfenster ausgeben
Pfad$ = Space$(255)
P% = WinDirectory(Pfad$)
MsgBox Left$(Pfad$, P%), 64, "Windows-Verzeichnis"
'Hinweis: der API-Aufruf ⁿber GFA-Basic-DLLs
' ist nur dann sinnvoll, wenn diese auch im
' Zusammenhang mit DLL-Routinen verwendet werden,
' da der Aufruf in der Regel entsprechend einfach
' direkt unter VB realisierbar ist
End Sub
Sub Befehl5_Click ()
'Popupmenⁿ-Anzeige mit Auswahlm÷glichkeit fⁿr Visual Basic,
'ohne wie bei der PopupMenu-Methode die Menⁿdefinition
'innerhalb des menⁿentwurfsfensters vornehmen zu mⁿssen
'Hinweis: der Titel ╗Bearbeiten½ ist nicht anwΣhlbar
M$ = "Bearbeiten:| &Ausschneiden| &Kopieren| &Einfⁿgen| &L÷schen| &Ende"
a% = Choose(M$)
'Meldung zum angewΣhlten Menⁿpunkt ausgeben
MsgBox "Sie haben Menⁿpunkt " + Str$(a%) + " angewΣhlt", 64, "Menⁿanwahl"
'Hinweis: die Position des Popupmenⁿs ist im vorliegenden
' Beispiel statisch; durch ─nderung der DLL-Routine kann
' die Positionierung des Popup-Fensters auch frei erfolgen
End Sub