I have not looked into how to get the modeless window to get activated
on startup.
Example:
Code:
#COMPILE EXE #INCLUDE "WIN32API.INC" GLOBAL ghDlg AS LONG GLOBAL ghDlg2 AS LONG '--- CALLBACK FUNCTION cancelButton() DIALOG END ghDlg END FUNCTION '--- CALLBACK FUNCTION DlgCallBack2() Local rc as RECT SELECT CASE CBMSG CASE %WM_INITDIALOG Call GetWindowRect(ghDlg2,rc) x&=rc.nLeft y&=rc.nTop Call MoveWindow(ghDlg,x&,y&,0,0,1) CASE %WM_MOVE Call GetWindowRect(ghDlg2,rc) x&=rc.nLeft y&=rc.nTop Call MoveWindow(ghDlg,x&,y&,0,0,1) CASE %WM_CLOSE DIALOG END ghDlg CASE %WM_DESTROY END SELECT END FUNCTION '--- CALLBACK FUNCTION DlgCallBack() LOCAL hDlg2 AS LONG SELECT CASE CBMSG CASE %WM_INITDIALOG DIALOG NEW ghDlg,"Title: ",,,300,200,%WS_CAPTION OR %WS_POPUP OR %DS_CENTER, TO hDlg2 ghDlg2 = hDlg2 CONTROL ADD BUTTON, hDlg2, %IDCANCEL, "E&xit", 140, 130, 40, 14 CALL cancelButton DIALOG SHOW MODELESS hDlg2 CALL DlgCallBack2 CASE %WM_DESTROY END SELECT END FUNCTION '--- FUNCTION PBMAIN 'draw this some place off the screen DIALOG NEW 0,"Title:",0,0,0,0,%WS_SYSMENU, TO hDlg& ghdlg=hDlg& DIALOG SHOW MODAL hDlg& CALL DlgCallBack END FUNCTION
[This message has been edited by Jules Marchildon (edited October 16, 2000).]
Leave a comment: