Email me
| |
MSGBOX, een Messagebox gebruiken in PBCC
Wie zowel PB/CC als PB/DLL gebruikt zal regelmatig toch het gemak van de message box
van PB/DLL missen als hij of zij met PB/CC werkt. Middels één eenvoudig commando kan dan
immer een boodschap worden gegeven, een waarde gemeld, terwijl andere zaken in beeld niet
worden verstoord. Maar het kan ook handig zijn als u een programma source code hebt die
voor PB/DLL is bedoeld, maar alleen maar msgbox gebruikt. Eenvoudig gebruik is dan
mogelijk. . . lees verder!
Toch kan men gewoon in PB/CC de zogenaamde GUI componenten gebruiken, want het is
immers een volledige 32-bits Windows applicatie! Alleen ondersteund PB/CC (door ontwerp
keuze) geen eigen GUI mogelijkheden.
Als u nu toch een messagebox wilt gebruiken, dan is de volgende code handig.
 | De code als BAS file |
 | De code als compleet gecompileerde EXE (met
PB/CC) |
 | De code als HTML: |
'use pbcc
'te vinden op http://www.powerbasic.com/support/forums/Forum7/HTML/000967.html
#INCLUDE "Win32api.inc"
DECLARE FUNCTION MSGBOX(MsgBoxText AS STRING,lpStyle AS LONG,MsgBoxCaption AS STRING) AS
LONG
'------------------------------------------------------------------------------------
FUNCTION PBMAIN() AS LONG
MSGBOX "Hi there!",%MB_ICONINFORMATION,"Hello World"
END FUNCTION
'------------------------------------------------------------------------------------
'------------------------------------------------------------------------------------
FUNCTION MSGBOX(MsgBoxText AS STRING,lpStyle AS LONG,MsgBoxCaption AS STRING) AS LONG
LOCAL lResult AS LONG
LOCAL lpConsoleTitle AS ASCIIZ * 256
DIM lpMsgBoxParams AS MSGBOXPARAMS
IF LEN(MsgBoxCaption) = 0 THEN
GetConsoleTitle lpConsoleTitle, SIZEOF(lpConsoleTitle)
MsgBoxCaption = lpConsoleTitle
END IF
lpMsgBoxParams.dwStyle = lpStyle
lpMsgBoxParams.lpszText=STRPTR(MsgBoxText)
lpMsgBoxParams.lpszCaption=STRPTR(MsgBoxCaption)
lResult = MessageBoxIndirect(lpMsgBoxParams)
FUNCTION = lResult
END FUNCTION
|