BCX_WND function
Purpose: BCX_WND creates a window and, as well, automatically creates and registers a new class using the ProcedureName parameter.
Syntax: hWnd Parameters:
Return Value:
|
Remarks : Using BCX_Wnd sets pixels on as default.
Example :
GUINOMAINFUNCTIONWINMAIN()LOCALForm1 Form1=BCX_WND("MAINFORM", Form1Proc,"GUI NOMAIN TEST")SHOW(Form1)FUNCTION=BCX_MSGPUMP()ENDFUNCTIONBEGINEVENTSForm1ProcENDEVENTSMAIN
SHOWMODAL ... ENDMODAL macro statements
Purpose: The SHOWMODAL ... ENDMODAL macros are used together to make modal a BCX_WND window. The SHOWMODAL ... ENDMODAL macros can be used only with a BCX_WND window which has another window as its parent. These macros are used in place of SHOW and cause the parent window to be disabled when the BCX_WND child form is opened and to be enabled when the BCX_WND child form is closed.
Syntax:
Parameters:
|
Example : This example shows usage of the SHOWMODAL and ENDMODAL macros
GUINOMAIN,PIXELSFUNCTIONWINMAIN()GLOBALForm1ASCONTROLGLOBALButton1ASCONTROL Form1=BCX_WND("MAINFORM", form1Proc,"Multi-Form GUI NoMain / Dialog Test",0,0,0,800,600)BCX_SET_FORM_COLOR(Form1,QBCOLOR(31))BCX_SETICON(Form1,123)Button1=BCX_BUTTON("Modal", Form1,98,690,20,96,24)BCX_BUTTON("Modeless", Form1,99,690,50,96,24)BCX_BUTTON("Modal Form", Form1,100,690,80,96,24)BCX_BUTTON("Non-Modal Form", Form1,105,690,110,96,24)BCX_BUTTON("Close", Form1,104,690,140,96,24)CENTER(Form1)SHOW(Form1)SetFocus(Button1)FUNCTION=BCX_MSGPUMP()ENDFUNCTIONBEGINEVENTSform1ProcSELECTCASEMsgHANDLE_MSG(WM_COMMAND, form1_command)HANDLE_MSG(WM_CLOSE, form1_close)ENDSELECTENDEVENTSMAINMSGHANDLERform1_commandIFCBCTLMSG=BN_CLICKEDTHENIFCBCTL=98THENBCX_MDIALOG(DialogOne,"BCX Modal Dialog",Form1,110,110,110,110)ENDIFIFCBCTL=99THENBCX_DIALOG(DialogTwo,"BCX Modeless Dialog",Form1,110,110,110,110)ENDIFIFCBCTL=100THENLoadForm2()ENDIFIFCBCTL=105THENLoadForm3()ENDIFIFCBCTL=104THENSendMessage(Form1, WM_CLOSE,0,0)ENDIFENDIFENDHANDLERMSGHANDLERform1_close LReturn=DestroyWindow(hWnd)ENDHANDLER'----------------------------------------------------BEGINMODALDIALOGASDialogOneSELECTCASECBMSGCASEWM_INITDIALOGCENTER(hWnd)SHOW(hWnd)ENDSELECTENDDIALOG'----------------------------------------------------BEGINDIALOGASDialogTwoSELECTCASECBMSGCASEWM_INITDIALOGCENTER(hWnd)SHOW(hWnd)ENDSELECTENDDIALOGFUNCTIONLoadForm2()LOCALnStyle=WS_CHILD | WS_VISIBLE | WS_CLIPCHILDREN | WS_CLIPSIBLINGS | WS_BORDERLOCALformASHWND'EnableWindow(Form1, FALSE)form=BCX_WND("CHILD1FORM", form2Proc,"Modal Form", Form1,10,10,640,400, nStyle,0)BCX_SETICON(form,123)BCX_BUTTON("Modal", form,101,560,20,72,24)BCX_BUTTON("Modeless", form,102,560,50,72,24)BCX_BUTTON("Close", form,103,560,80,72,24)CENTER(form)SHOWMODAL(form)FUNCTION=0ENDFUNCTIONFUNCTIONLoadForm3()LOCALnStyle=WS_CHILD | WS_VISIBLE | WS_CLIPCHILDREN | WS_CLIPSIBLINGS | WS_BORDERLOCALformASHWND form=BCX_WND("CHILD2FORM", form3Proc,"Non-Modal Form", Form1,10,10,640,400, nStyle,0)BCX_SETICON(form,123)BCX_BUTTON("Modal", form,201,560,20,72,24)BCX_BUTTON("Modeless", form,202,560,50,72,24)BCX_BUTTON("Close", form,203,560,80,72,24)CENTER(form)SHOW(form)FUNCTION=0ENDFUNCTIONBEGINEVENTSform3ProcSELECTCASECBMSGCASEWM_CREATE STATIC nWndNo=0SetWindowText(hWnd,"Window No. "+TRIM$(STR$(++nWndNo)))CASEWM_COMMANDIFCBCTLMSG=BN_CLICKEDTHENIFCBCTL=201THENBCX_MDIALOG(DialogOne,"BCX Modal Dialog",hWnd,110,110,110,110)ENDIFIFCBCTL=202THENBCX_DIALOG(DialogTwo,"BCX Modeless Dialog",hWnd,110,110,110,110)ENDIFIFCBCTL=203THENSendMessage(hWnd, WM_CLOSE,0,0)ENDIFENDIFCASEWM_CLOSE DestroyWindow(hWnd)ENDSELECTENDEVENTSBEGINEVENTSform2ProcSELECTCASECBMSGCASEWM_COMMANDIFCBCTLMSG=BN_CLICKEDTHENIFCBCTL=101THENBCX_MDIALOG(DialogOne,"BCX Modal Dialog",hWnd,110,110,110,110)ENDIFIFCBCTL=102THENBCX_DIALOG(DialogTwo,"BCX Modeless Dialog",hWnd,110,110,110,110)ENDIFIFCBCTL=103THENSendMessage(hWnd, WM_CLOSE,0,0)ENDIFENDIFCASEWM_CLOSEENDMODAL(hWnd)SetFocus(Form1)ENDSELECTENDEVENTS