Creates a ToolBar control in the current active form, window, or dialog.
ToolBarCtrl text$, id%, x, y, w, h[, style%]
text$:control text
id%:control identifier
x,y,w,h:iexp
style%:the control styles
A toolbar is a control window that contains one or more buttons. Each button sends a command message to the parent window when the user clicks it.
Each button has a command identifier associated with it. When the user selects a button, the toolbar sends the parent window a WM_COMMAND message that includes the command identifier of the button. The parent window examines the command identifier and carries out the command associated with the button. The WM_COMMAND message can be handled in the _Message or _MessageProc sub.
Dialog # 1, 10, 10, 400, 200, "ToolBar", WS_SYSMENU
ToolBarCtrl "", 10, 20, 20, 150, 30
EndDialog
Local tbbut As TBBUTTON, tbs$
tbbut.cbSize = 200
tbbut.pszText = Len(tbs$)
tbbut.cchText = V:tbs$
// For some reason, this fails to print a button...
tbs$ = "Button 1" : ~SendMessage(DlgItem(1, 10), TB_INSERTBUTTON, 1, V:tbbut)
ShowDialog # 1
Do
Sleep
Until Dlg_1 Is Nothing
Sub Dlg_1_Close(Cancel?)
Cancel? = False
EndSub
Global Const TB_INSERTBUTTON = (WM_USER + 21)
Type TBBUTTON2
- Int iBitmap, idCommand
- Byte fsState, fsStyle, bReserved
- Long dwData, iString
EndType
Type TBBUTTON
cbSize As Long
dwMask As Long
idCommand As Long
iImage As Long
fsState As Byte
fsStyle As Byte
cx As Word
lParam As Long
pszText As Long
cchText As Long
End Type
This command is particular useful for a dialog box in a GLL, because a GLL doesn't support OCX controls.
With the general Control statement any control type can be created.
For the full range of Windows messages and constants, see this page; the constant values (some of which are not declared in GB32) are listed below:
Toolbar button styles
Const TBSTYLE_BUTTON = $0000
Const TBSTYLE_SEP = $0001
Const TBSTYLE_CHECK = $0002
Const TBSTYLE_GROUP = $0004
Const TBSTYLE_CHECKGROUP = (TBSTYLE_GROUP Or TBSTYLE_CHECK)
Const TBSTYLE_DROPDOWN = $0008
Const TBSTYLE_AUTOSIZE = $0010
Const TBSTYLE_NOPREFIX = $0020
Const TBSTYLE_TOOLTIPS = $0100
Const TBSTYLE_WRAPABLE = $0200
Const TBSTYLE_ALTDRAG = $0400
Const TBSTYLE_FLAT = $0800
Const TBSTYLE_LIST = $1000
Const TBSTYLE_CUSTOMERASE = $2000
Const TBSTYLE_REGISTERDROP = $4000
Const TBSTYLE_TRANSPARENT = $8000
Const TBSTYLE_DRAWDDARROWS = $00000001
ToolBar Ex Styles
Const TBSTYLE_EX_DRAWDDARROWS = $1
Const TBSTYLE_EX_HIDECLIPPEDBUTTONS = $10
Const TBSTYLE_EX_DOUBLEBUFFER = $80
ToolBar Messages (where Const WM_USER = $0400)
Const TB_ENABLEBUTTON = (WM_USER + 1)
Const TB_CHECKBUTTON = (WM_USER + 2)
Const TB_PRESSBUTTON = (WM_USER + 3)
Const TB_HIDEBUTTON = (WM_USER + 4)
Const TB_INDETERMINATE = (WM_USER + 5)
Const TB_MARKBUTTON = (WM_USER + 6)
Const TB_ISBUTTONENABLED = (WM_USER + 9)
Const TB_ISBUTTONCHECKED = (WM_USER + 10)
Const TB_ISBUTTONPRESSED = (WM_USER + 11)
Const TB_ISBUTTONHIDDEN = (WM_USER + 12)
Const TB_ISBUTTONINDETERMINATE= (WM_USER + 13)
Const TB_ISBUTTONHIGHLIGHTED = (WM_USER + 14)
Const TB_SETSTATE = (WM_USER + 17)
Const TB_GETSTATE = (WM_USER + 18)
Const TB_ADDBITMAP = (WM_USER + 19)
Const TB_ADDBUTTONSA = (WM_USER + 20)
Const TB_INSERTBUTTONA = (WM_USER + 21)
Const TB_ADDBUTTONS = (WM_USER + 20)
Const TB_INSERTBUTTON = (WM_USER + 21)
Const TB_DELETEBUTTON = (WM_USER + 22)
Const TB_GETBUTTON = (WM_USER + 23)
Const TB_BUTTONCOUNT = (WM_USER + 24)
Const TB_COMMANDTOINDEX = (WM_USER + 25)
Const TB_SAVERESTOREA = (WM_USER + 26)
Const TB_CUSTOMIZE = (WM_USER + 27)
Const TB_ADDSTRINGA = (WM_USER + 28)
Const TB_GETITEMRECT = (WM_USER + 29)
Const TB_BUTTONSTRUCTSIZE = (WM_USER + 30)
Const TB_SETBUTTONSIZE = (WM_USER + 31)
Const TB_SETBITMAPSIZE = (WM_USER + 32)
Const TB_AUTOSIZE = (WM_USER + 33)
Const TB_GETTOOLTIPS = (WM_USER + 35)
Const TB_SETTOOLTIPS = (WM_USER + 36)
Const TB_SETPARENT = (WM_USER + 37)
Const TB_SETROWS = (WM_USER + 39)
Const TB_GETROWS = (WM_USER + 40)
Const TB_GETBITMAPFLAGS = (WM_USER + 41)
Const TB_SETCMDID = (WM_USER + 42)
Const TB_CHANGEBITMAP = (WM_USER + 43)
Const TB_GETBITMAP = (WM_USER + 44)
Const TB_GETBUTTONTEXTA = (WM_USER + 45)
Const TB_GETBUTTONTEXTW = (WM_USER + 75)
Const TB_REPLACEBITMAP = (WM_USER + 46)
Const TB_SETINDENT = (WM_USER + 47)
Const TB_SETIMAGELIST = (WM_USER + 48)
Const TB_GETIMAGELIST = (WM_USER + 49)
Const TB_LOADIMAGES = (WM_USER + 50)
Const TB_GETRECT = (WM_USER + 51)
Const TB_SETHOTIMAGELIST = (WM_USER + 52)
Const TB_GETHOTIMAGELIST = (WM_USER + 53)
Const TB_SETDISABLEDIMAGELIST = (WM_USER + 54)
Const TB_GETDISABLEDIMAGELIST = (WM_USER + 55)
Const TB_SETSTYLE = (WM_USER + 56)
Const TB_GETSTYLE = (WM_USER + 57)
Const TB_GETBUTTONSIZE = (WM_USER + 58)
Const TB_SETBUTTONWIDTH = (WM_USER + 59)
Const TB_SETMAXTEXTROWS = (WM_USER + 60)
Const TB_GETTEXTROWS = (WM_USER + 61)
Const TB_GETOBJECT = (WM_USER + 62)
Const TB_GETBUTTONINFOW = (WM_USER + 63)
Const TB_SETBUTTONINFOW = (WM_USER + 64)
Const TB_GETBUTTONINFOA = (WM_USER + 65)
Const TB_SETBUTTONINFOA = (WM_USER + 66)
Const TB_INSERTBUTTONW = (WM_USER + 67)
Const TB_ADDBUTTONSW = (WM_USER + 68)
Const TB_HITTEST = (WM_USER + 69)
Const TB_SETDRAWTEXTFLAGS = (WM_USER + 70)
Const TB_GETHOTITEM = (WM_USER + 71)
Const TB_SETHOTITEM = (WM_USER + 72)
Const TB_SETANCHORHIGHLIGHT = (WM_USER + 73)
Const TB_GETANCHORHIGHLIGHT = (WM_USER + 74)
Const TB_SAVERESTOREW = (WM_USER + 76)
Const TB_ADDSTRINGW = (WM_USER + 77)
Const TB_MAPACCELERATORA = (WM_USER + 78)
Const TB_GETINSERTMARK = (WM_USER + 79)
Const TB_SETINSERTMARK = (WM_USER + 80)
Const TB_INSERTMARKHITTEST = (WM_USER + 81)
Const TB_MOVEBUTTON = (WM_USER + 82)
Const TB_GETMAXSIZE = (WM_USER + 83)
Const TB_SETEXTENDEDSTYLE = (WM_USER + 84)
Const TB_GETEXTENDEDSTYLE = (WM_USER + 85)
Const TB_GETPADDING = (WM_USER + 86)
Const TB_SETPADDING = (WM_USER + 87)
Const TB_SETINSERTMARKCOLOR = (WM_USER + 88)
Const TB_GETINSERTMARKCOLOR = (WM_USER + 89)
Control, AnimateCtrl, AutoCheckBox, AutoRadioButton, CheckBox, ComboBox, CText, Dialog, DefPushButton, EditText, GroupBox, HeaderCtrl, ListBox, ListViewCtrl, LText, ProgressCtrl, PushButton, RadioButton, RichEditCtrl, RText, ScrollBar, StatusCtrl, TabCtrl, ToolBarCtrl, TrackBarCtrl, TreeViewCtrl, UpDownCtrl
{Created by Sjouke Hamstra; Last updated: 25/10/2014 by James Gaite}