www.pudn.com > SDK 工具条,分割条,TREE 等控件演示代码.rar > toolbar.cpp
/*
#include "WinMain.h"
#include "toolbar.h"
extern HINSTANCE hInst;
HWND hWndToolbar;
#define NUMIMAGES 20
#define IMAGEWIDTH 18
#define IMAGEHEIGHT 17
#define BUTTONWIDTH 0
#define BUTTONHEIGHT 0
#define IDM_TOOLBAR 500 // ID for the toolbar.
#define IDB_BMP 700
char pszStrings[ ] = {
'N','E','W','\0','\0'
};
char lianjie[] = "lianjie";
TBBUTTON tbb[2]
=
{
{0, IDM_FILENEW,
TBSTATE_ENABLED,
TBSTYLE_DROPDOWN,
0, 0, 0},
{STD_FILENEW, IDM_NEW, TBSTATE_ENABLED, BTNS_BUTTON,
#if defined(_WIN32) | defined(_WIN64)
{0},
#endif
0L, 0},
};
BOOL CreateTBar(HWND hwnd)
{
int iNew,newi;
UINT ID;
TBADDBITMAP tb;
int index , stdidx;
char pszBuf[8] = "CHANGE";
char pszBuf1[8] = "CHANGE1";
//INITCOMMONCONTROLSEX icex;
InitCommonControls();
//InitCommonControlsEx(&icex);
hWndToolbar = CreateToolbarEx(hwnd,
WS_CHILD | WS_VISIBLE
| TBSTYLE_TOOLTIPS
// | TBSTYLE_FLAT
// | TBSTYLE_LIST
|TBSTYLE_EX_DRAWDDARROWS ,
//WS_CHILD | WS_VISIBLE
//| CCS_ADJUSTABLE | TBSTYLE_TOOLTIPS,
IDM_TOOLBAR,
NUMIMAGES,
hInst,
IDB_BMP,
tbb,
sizeof(tbb)/
sizeof(TBBUTTON),
BUTTONWIDTH,
BUTTONHEIGHT,
IMAGEWIDTH,
IMAGEHEIGHT,
sizeof(TBBUTTON));
tb.hInst = HINST_COMMCTRL;
tb.nID = IDB_VIEW_LARGE_COLOR;
iNew =(int)SendMessage (hWndToolbar, TB_ADDBITMAP, 0, (LPARAM)&tb);
SendMessage(
hWndToolbar, TB_ADDSTRING,(WPARAM) 0, (LPARAM) pszBuf);
iNew = (int)SendMessage(
hWndToolbar, TB_MAPACCELERATOR, (WPARAM) 'N', (LPARAM) &ID);
iNew = (int)SendMessage(hWndToolbar,TB_SETEXTENDEDSTYLE, (WPARAM) 0,(LPARAM) (DWORD)TBSTYLE_EX_DRAWDDARROWS );
// returns LRESULT in lResult (HWND) hWndControl,
// handle to destination control (UINT) TB_SETEXTENDEDSTYLE,
// message ID (WPARAM) wParam,
// = 0; not used, must be zero (LPARAM) lParam
// = (LPARAM) (DWORD) dwExStyle; );
return (hWndToolbar != NULL);
}
BOOL DoNotify(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
{
#define lpnm ((LPNMHDR)lParam)
#define lpnmTB ((LPNMTOOLBAR)lParam)
RECT rc;
TPMPARAMS tpm;
HMENU hPopupMenu = NULL;
HMENU hMenuLoaded;
BOOL bRet = FALSE;
switch(lpnm->code){
case TBN_DROPDOWN:
SendMessage(lpnmTB->hdr.hwndFrom, TB_GETRECT,
(WPARAM)lpnmTB->iItem, (LPARAM)&rc);
MapWindowPoints(lpnmTB->hdr.hwndFrom,
HWND_DESKTOP, (LPPOINT)&rc, 2);
tpm.cbSize = sizeof(TPMPARAMS);
tpm.rcExclude = rc;
hMenuLoaded = LoadMenu(hInst, MAKEINTRESOURCE(IDR_POPUP));
hPopupMenu = GetSubMenu(LoadMenu(hInst,
MAKEINTRESOURCE(IDR_POPUP)),0);
TrackPopupMenuEx(hPopupMenu,
TPM_LEFTALIGN|TPM_LEFTBUTTON|TPM_VERTICAL,
rc.left, rc.bottom, hwnd, &tpm);
DestroyMenu(hMenuLoaded);
return (FALSE);
}
return FALSE;
}
*/