BCX_LISTBOX creates a listbox that sorts strings in the list box alphabetically. The parent window receives an input message whenever the user clicks or double-clicks a string. The list box has borders on all sides.
Syntax:hCtl = BCX_LISTBOX(Text AS STRING, _ hwndParent AS HWND, _ hCtlID AS INTEGER, _ Xpos AS INTEGER, _ Ypos AS INTEGER, _ Width AS INTEGER, _ Height AS INTEGER _ [, WinStyle AS INTEGER] _ [, ExWinStyle AS INTEGER]) Return Value:
Parameters:
|
The default window Style for a BCX_LISTBOX control also can be changed by using the MODSTYLE function.
Here is a complete example using the BCX_LISTBOX function.
GUI "BCX_LISTBOX", PIXELS GLOBAL Form1 AS HWND GLOBAL List1 AS HWND MACRO ID_Form1 = 0 MACRO ID_List1 = 1 SUB FORMLOAD Form1 = BCX_FORM("A BCX Listbox", 102, 88, 396, 338) List1 = BCX_LISTBOX("", Form1, ID_List1, 72, 52, 236, 204) '************************************************************************** SendMessage(List1, LB_ADDSTRING,0,"Annealed Glass") SendMessage(List1, LB_ADDSTRING,0,"Themerally Tempered Glass") SendMessage(List1, LB_ADDSTRING,0,"Polycarbonate") SendMessage(List1, LB_ADDSTRING,0,"Laminated Themerally Tempered Glass") SendMessage(List1, LB_ADDSTRING,0,"Laminated Semi-Tempered Glass") SendMessage(List1, LB_ADDSTRING,0,"Laminated Annealed Glass") '************************************************************************** CENTER(Form1) SHOW (Form1) END SUB BEGIN EVENTS SELECT CASE CBMSG CASE WM_COMMAND IF CBCTL = ID_List1 THEN IF CBCTLMSG = LBN_SELCHANGE THEN CALL List1_Click(ID_List1) EXIT FUNCTION END IF END IF END SELECT END EVENTS SUB List1_Click (Id AS INTEGER) DIM RAW HndlWnd AS HWND DIM RAW cSel, Buffer$ HndlWnd = GetDlgItem(Form1,Id) cSel = SendMessage(HndlWnd,LB_GETCURSEL,0,0) Buffer$ = SPACE$(255) SendMessage(HndlWnd,LB_GETTEXT,cSel,Buffer$) SetWindowText(Form1, Buffer$) END SUB ' List1_Click
For another example of the BCX_LISTBOX function see Demo.bas.