博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
弹窗相应menu点击事件
阅读量:5952 次
发布时间:2019-06-19

本文共 24583 字,大约阅读时间需要 81 分钟。

#pragma once//演示QQ2009#define WINDOW_WIDTH   250 //窗口宽度#define WINDOW_HEIGHT  600 //窗口高度struct xc_image_res  //图片资源{    HIMAGE image_bk;    HIMAGE hImageLogo;    HIMAGE close_leave;    HIMAGE close_stay;    HIMAGE close_down;    HIMAGE max_leave;    HIMAGE max_stay;    HIMAGE max_down;    HIMAGE min_leave;    HIMAGE min_stay;    HIMAGE min_down;    HIMAGE weather;    HIMAGE face_leave;    HIMAGE face_stay;    HIMAGE userstate_leave;    HIMAGE userstate_stay;    HIMAGE userstate_down;    HIMAGE button_leave;    HIMAGE button_stay;    HIMAGE button_down;    HIMAGE searchedit;    HIMAGE search;    HIMAGE icon1;    HIMAGE icon2;    HIMAGE icon3;    HIMAGE icon7;    HIMAGE icon8;    HIMAGE icon9;    HIMAGE icon10;    HIMAGE icon11;    HIMAGE icon15;    HIMAGE icon16;    HIMAGE mainMenu_leave;    HIMAGE mainMenu_stay;    HIMAGE hideleftpanel_leave;    HIMAGE hideleftpanel_stay;    HIMAGE tabLeft_leave;    HIMAGE tabLeft_stay;    HIMAGE tabLeft_down;    HIMAGE leftpane;    HIMAGE tab1;    HIMAGE tab2;    HIMAGE tab3;    HIMAGE talkLabel_leave;    HIMAGE talkLabel_stay;    HIMAGE talkLabel_down;    HIMAGE talktbico1;    HIMAGE talktbico2;    HIMAGE talktbico3;    HIMAGE imp_shrink;    HIMAGE imp_expand;    HIMAGE imp_icon_1;    HIMAGE imp_icon_2;    HIMAGE imp_icon_3;    HIMAGE imp_icon_4;    HIMAGE imp_icon_5;    HIMAGE imp_icon_6;    HIMAGE scroll_thumb_leave;    HIMAGE scroll_thumb_down;    HIMAGE scroll_up_leave;    HIMAGE scroll_up_down;    HIMAGE scroll_down_leave;    HIMAGE scroll_down_down;};class DemoCPlus : public CXEventMsg{public:    DemoCPlus(void);    ~DemoCPlus(void);    void CreateWnd();    void LoadImageRes();    void HandleButton_Close(HELE hClose);    void HandleButton_Max(HELE hMax);    void HandleButton_Min(HELE hMin);    void CreateWeatherButton(HWINDOW hWindow);    void HandleButton_Face(HELE hFace);    void HandleButton_UserState(HELE hUserState);    void HandleButton_UserSign(HELE hUserSign);    void HandleEdit_Search(HELE hSearch);    HELE CreateToolButton(HWINDOW hWindow,int x,int y,int cx,int cy);    HELE CreateToolSearchButton(HWINDOW hWindow);    void HandleCreateToolButton(HWINDOW hWindow);    void HandleCreateMainMenuButton(HWINDOW hWindow);    HELE HandleCreateLeftPaneButton(HELE hPic,int x,int y,int cx,int cy);    void HandleCreateLeftPane(HWINDOW hWindow);    void HandleCreateMainTab(HWINDOW hWindow);    HMENUX CreatePlayerCombox();    bool OnWndNCEndDrawWindow(HWINDOW hWindow,HDC hdc);    bool OnWndSize(HWINDOW hWindow,UINT flags,SIZE *pSize);    bool OnWndDestroy(HWINDOW hWindow) ;    bool OnFriendsLButtonUp(HELE hEle, POINT *pPt) ;    bool OnFriendsRButtonUp(HELE hEle, POINT *pPt) ;    bool EleRButtonDown(HELE hEle,UINT flags,POINT *pPt);    BOOL My_MenuSelect(HWINDOW hWindow,int id);  //菜单选择private:    xc_image_res image_res;    HWINDOW hWindow;    HELE hWeather;    HELE hUserSign;    HELE hButtonSkin;    HELE hButtonMsg;    HELE hTree;    HELE hTabBar;    HELE hButtonHidePane;    HELE hButtonMainMenu;    HELE hButtonTool1;    HELE hButtonTool2;    HELE hButtonTool3;    HELE hButtonTool4;    HELE hButtonTool5;    HELE hButtonTool6;    HELE hLeftPane;    HELE hSearchEdit;    HELE hComboBox;    HMENUX hMenu;    int group1;    int group2;};
View Code
#include "stdafx.h"#include "DemoCPlus.h"DemoCPlus::DemoCPlus(void){    hMenu = NULL;}DemoCPlus::~DemoCPlus(void){}void DemoCPlus::LoadImageRes(){    image_res.image_bk=XImage_LoadZipAdaptive(L"qqImage.zip",L"qqImage/back.bmp",NULL,6,174,123,140);    image_res.hImageLogo=XImage_LoadZip(L"qqImage.zip",L"qqImage/logo2009.png");    image_res.close_leave=XImage_LoadZip(L"qqImage.zip",L"qqImage/button/close_leave.png");    image_res.close_stay=XImage_LoadZip(L"qqImage.zip",L"qqImage/button/close_stay.png");    image_res.close_down=XImage_LoadZip(L"qqImage.zip",L"qqImage/button/close_down.png");    image_res.max_leave=XImage_LoadZip(L"qqImage.zip",L"qqImage/button/max_leave.png");    image_res.max_stay=XImage_LoadZip(L"qqImage.zip",L"qqImage/button/max_stay.png");    image_res.max_down=XImage_LoadZip(L"qqImage.zip",L"qqImage/button/max_down.png");    image_res.min_leave=XImage_LoadZip(L"qqImage.zip",L"qqImage/button/min_leave.png");    image_res.min_stay=XImage_LoadZip(L"qqImage.zip",L"qqImage/button/min_stay.png");    image_res.min_down=XImage_LoadZip(L"qqImage.zip",L"qqImage/button/min_down.png");    image_res.weather=XImage_LoadZip(L"qqImage.zip",L"qqImage/button/weather.png");    image_res.face_leave=XImage_LoadZip(L"qqImage.zip",L"qqImage/face_leave.png");    image_res.face_stay=XImage_LoadZip(L"qqImage.zip",L"qqImage/face_stay.png");    image_res.userstate_leave=XImage_LoadZip(L"qqImage.zip",L"qqImage/button/userstate_leave.png");    image_res.userstate_stay=XImage_LoadZip(L"qqImage.zip",L"qqImage/button/userstate_stay.png");    image_res.userstate_down=XImage_LoadZip(L"qqImage.zip",L"qqImage/button/userstate_down.png");    image_res.button_leave=XImage_LoadZip(L"qqImage.zip",L"qqImage/button_leave.png");    image_res.button_stay=XImage_LoadZipAdaptive(L"qqImage.zip",L"qqImage/button_stay.png",NULL,3,22,3,22);    image_res.button_down=XImage_LoadZipAdaptive(L"qqImage.zip",L"qqImage/button_down.png",NULL,3,22,3,22);    image_res.searchedit=XImage_LoadZipAdaptive(L"qqImage.zip",L"qqImage/searchedit.png",NULL,9,13,6,19);    image_res.search=XImage_LoadZip(L"qqImage.zip",L"qqImage/17.png");    image_res.icon1=XImage_LoadZip(L"qqImage.zip",L"qqImage/1.png");    image_res.icon2=XImage_LoadZip(L"qqImage.zip",L"qqImage/2.png");    image_res.icon3=XImage_LoadZip(L"qqImage.zip",L"qqImage/3.png");    image_res.icon7=XImage_LoadZip(L"qqImage.zip",L"qqImage/7.png");    image_res.icon8=XImage_LoadZip(L"qqImage.zip",L"qqImage/8.png");    image_res.icon9=XImage_LoadZip(L"qqImage.zip",L"qqImage/9.png");    image_res.icon10=XImage_LoadZip(L"qqImage.zip",L"qqImage/10.png");    image_res.icon11=XImage_LoadZip(L"qqImage.zip",L"qqImage/11.png");    image_res.icon15=XImage_LoadZip(L"qqImage.zip",L"qqImage/15.png");    image_res.icon16=XImage_LoadZip(L"qqImage.zip",L"qqImage/16.png");    image_res.mainMenu_leave=XImage_LoadZip(L"qqImage.zip",L"qqImage/mainMenu.png");    image_res.mainMenu_stay=XImage_LoadZip(L"qqImage.zip",L"qqImage/mainMenu_stay.png");    image_res.hideleftpanel_leave=XImage_LoadZip(L"qqImage.zip",L"qqImage/button/hideleftpanel_leave.png");    image_res.hideleftpanel_stay=XImage_LoadZip(L"qqImage.zip",L"qqImage/button/hideleftpanel_stay.png");    image_res.tabLeft_leave=XImage_LoadZip(L"qqImage.zip",L"qqImage/button/tabLeft_leave.png");    image_res.tabLeft_stay=XImage_LoadZip(L"qqImage.zip",L"qqImage/button/tabLeft_stay.png");    image_res.tabLeft_down=XImage_LoadZip(L"qqImage.zip",L"qqImage/button/tabLeft_down.png");    image_res.leftpane=XImage_LoadZip(L"qqImage.zip",L"qqImage/leftpane.png",0,true);    image_res.tab1=XImage_LoadZip(L"qqImage.zip",L"qqImage/tab1.png");    image_res.tab2=XImage_LoadZip(L"qqImage.zip",L"qqImage/tab2.png");    image_res.tab3=XImage_LoadZip(L"qqImage.zip",L"qqImage/tab3.png");    image_res.talkLabel_leave=XImage_LoadZip(L"qqImage.zip",L"qqImage/talkLabel_leave.png",0,true);    image_res.talkLabel_stay=XImage_LoadZip(L"qqImage.zip",L"qqImage/talkLabel_stay.png",0,true);    image_res.talkLabel_down=XImage_LoadZip(L"qqImage.zip",L"qqImage/talkLabel_check.png",0,true);    image_res.talktbico1=XImage_LoadZip(L"qqImage.zip",L"qqImage/talktbico1.png");    image_res.talktbico2=XImage_LoadZip(L"qqImage.zip",L"qqImage/talktbico2.png");    image_res.talktbico3=XImage_LoadZip(L"qqImage.zip",L"qqImage/talktbico3.png");    image_res.imp_shrink=XImage_LoadZip(L"qqImage.zip",L"qqImage/avatar/imp_shrink.png");    image_res.imp_expand=XImage_LoadZip(L"qqImage.zip",L"qqImage/avatar/imp_expand.png");    image_res.imp_icon_1=XImage_LoadZip(L"qqImage.zip",L"qqImage/avatar/imp_icon_1.png");    image_res.imp_icon_2=XImage_LoadZip(L"qqImage.zip",L"qqImage/avatar/imp_icon_2.png");    image_res.imp_icon_3=XImage_LoadZip(L"qqImage.zip",L"qqImage/avatar/imp_icon_3.png");    image_res.imp_icon_4=XImage_LoadZip(L"qqImage.zip",L"qqImage/avatar/imp_icon_4.png");    image_res.imp_icon_5=XImage_LoadZip(L"qqImage.zip",L"qqImage/avatar/imp_icon_5.png");    image_res.imp_icon_6=XImage_LoadZip(L"qqImage.zip",L"qqImage/avatar/imp_icon_6.png");    image_res.scroll_thumb_leave=XImage_LoadZipAdaptive(L"qqImage.zip",L"qqImage/scroll_thumb_leave.png",NULL,3,11,3,27);    image_res.scroll_thumb_down=XImage_LoadZipAdaptive(L"qqImage.zip",L"qqImage/scroll_thumb_down.png",NULL,3,11,3,27);    image_res.scroll_up_leave=XImage_LoadZip(L"qqImage.zip",L"qqImage/scroll_up_leave.png");    image_res.scroll_up_down=XImage_LoadZip(L"qqImage.zip",L"qqImage/scroll_up_Down.png");    image_res.scroll_down_leave=XImage_LoadZip(L"qqImage.zip",L"qqImage/scroll_down_leave.png");    image_res.scroll_down_down=XImage_LoadZip(L"qqImage.zip",L"qqImage/scroll_down_down.png");}void DemoCPlus::HandleButton_Close( HELE hClose ){    XEle_SetBkTransparent(hClose,true);    XEle_EnableFocus(hClose,false);    RECT rc={
0,1,42,18}; XEle_SetRect(hClose,&rc); XBtn_SetImageLeave(hClose,image_res.close_leave); XBtn_SetImageStay(hClose,image_res.close_stay); XBtn_SetImageDown(hClose,image_res.close_down);}void DemoCPlus::HandleButton_Max( HELE hMax ){ XEle_EnableFocus(hMax,false); RECT rc={
0,1,26,18}; XEle_SetRect(hMax,&rc); XBtn_SetImageLeave(hMax,image_res.max_leave); XBtn_SetImageStay(hMax,image_res.max_stay); XBtn_SetImageDown(hMax,image_res.max_down);}void DemoCPlus::HandleButton_Min( HELE hMin ){ XEle_SetBkTransparent(hMin,true); XEle_EnableFocus(hMin,false); RECT rc={
0,1,25,18}; XEle_SetRect(hMin,&rc); XBtn_SetImageLeave(hMin,image_res.min_leave); XBtn_SetImageStay(hMin,image_res.min_stay); XBtn_SetImageDown(hMin,image_res.min_down);}void DemoCPlus::CreateWeatherButton( HWINDOW hWindow ){ hWeather=XBtn_Create(WINDOW_WIDTH-38-10,10,38,38,NULL,hWindow); XBtn_EnableCursorHand(hWeather,true); XEle_SetBkTransparent(hWeather,true); XBtn_SetImageLeave(hWeather,image_res.weather); XBtn_SetImageStay(hWeather,image_res.weather); XBtn_SetImageDown(hWeather,image_res.weather);}void DemoCPlus::HandleButton_Face( HELE hFace ){ XEle_SetBkTransparent(hFace,true); XEle_EnableFocus(hFace,false); XBtn_SetImageLeave(hFace,image_res.face_leave); XBtn_SetImageStay(hFace,image_res.face_stay); XBtn_SetImageDown(hFace,image_res.face_stay);}void DemoCPlus::HandleButton_UserState( HELE hUserState ){ XEle_SetBkTransparent(hUserState,true); XEle_EnableFocus(hUserState,false); XBtn_SetImageLeave(hUserState,image_res.userstate_leave); XBtn_SetImageStay(hUserState,image_res.userstate_stay); XBtn_SetImageDown(hUserState,image_res.userstate_down);}void DemoCPlus::HandleButton_UserSign( HELE hUserSign ){ XEle_SetBkTransparent(hUserSign,true); XEle_EnableFocus(hUserSign,false); XBtn_SetTextAlign(hUserSign,DT_SINGLELINE | DT_VCENTER); XBtn_SetImageLeave(hUserSign,image_res.button_leave); XBtn_SetImageStay(hUserSign,image_res.button_stay); XBtn_SetImageDown(hUserSign,image_res.button_down);}void DemoCPlus::HandleEdit_Search( HELE hSearch ){ XSView_SetSpacing(hSearch,8,5,35,0); XEle_EnableBorder(hSearch,false); // XSView_SetImage(hSearch,image_res.searchedit); XEdit_SetImageLeave(hSearch,image_res.searchedit); XEdit_SetImageStay(hSearch,image_res.searchedit);}HELE DemoCPlus::CreateToolButton( HWINDOW hWindow,int x,int y,int cx,int cy ){ HELE hButton=XBtn_Create(x,y,cx,cy,NULL,hWindow); XEle_SetBkTransparent(hButton,true); XEle_EnableFocus(hButton,false); XBtn_SetImageLeave(hButton,image_res.button_leave); XBtn_SetImageStay(hButton,image_res.button_stay); XBtn_SetImageDown(hButton,image_res.button_down); return hButton;}HELE DemoCPlus::CreateToolSearchButton( HWINDOW hWindow ){ hButtonTool6=XBtn_Create(94,WINDOW_HEIGHT-50,60,22,NULL,hWindow); XEle_SetBkTransparent(hButtonTool6,true); XEle_EnableFocus(hButtonTool6,false); XBtn_SetImageLeave(hButtonTool6,image_res.button_leave); XBtn_SetImageStay(hButtonTool6,image_res.button_stay); XBtn_SetImageDown(hButtonTool6,image_res.button_down); XBtn_SetText(hButtonTool6,L"Search"); XBtn_SetIcon(hButtonTool6,image_res.search); return hButtonTool6;}void DemoCPlus::HandleCreateToolButton( HWINDOW hWindow ){ HELE hButton=CreateToolButton(hWindow,10,52,22,20); XBtn_SetIcon(hButton,image_res.icon1); hButton=CreateToolButton(hWindow,32,52,22,20); XBtn_SetIcon(hButton,image_res.icon2); hButton=CreateToolButton(hWindow,54,52,22,20); XBtn_SetIcon(hButton,image_res.icon3); //// hButtonSkin=CreateToolButton(hWindow,WINDOW_WIDTH-10-22,52,22,20); XBtn_SetIcon(hButtonSkin,image_res.icon8); hButtonMsg=CreateToolButton(hWindow,WINDOW_WIDTH-10-22-22,52,22,20); XBtn_SetIcon(hButtonMsg,image_res.icon7); // hButtonTool1=CreateToolButton(hWindow,50,WINDOW_HEIGHT-73,22,22); XBtn_SetIcon(hButtonTool1,image_res.icon9); hButtonTool2=CreateToolButton(hWindow,72,WINDOW_HEIGHT-73,22,22); XBtn_SetIcon(hButtonTool2,image_res.icon10); hButtonTool3=CreateToolButton(hWindow,94,WINDOW_HEIGHT-73,22,22); XBtn_SetIcon(hButtonTool3,image_res.icon11); / hButtonTool4=CreateToolButton(hWindow,50,WINDOW_HEIGHT-50,22,22); XBtn_SetIcon(hButtonTool4,image_res.icon15); hButtonTool5=CreateToolButton(hWindow,72,WINDOW_HEIGHT-50,22,22); XBtn_SetIcon(hButtonTool5,image_res.icon16); CreateToolSearchButton(hWindow);}void DemoCPlus::HandleCreateMainMenuButton( HWINDOW hWindow ){ hButtonMainMenu=XBtn_Create(3,WINDOW_HEIGHT-68,42,42,NULL,hWindow); XEle_SetBkTransparent(hButtonMainMenu,true); XEle_EnableFocus(hButtonMainMenu,false); XBtn_SetImageLeave(hButtonMainMenu,image_res.mainMenu_leave); XBtn_SetImageStay(hButtonMainMenu,image_res.mainMenu_stay); XBtn_SetImageDown(hButtonMainMenu,image_res.mainMenu_stay); //隐藏左侧工具条面板按钮 hButtonHidePane=XBtn_Create(1,WINDOW_HEIGHT-76,15,15,NULL,hWindow); XEle_SetBkTransparent(hButtonHidePane,true); XEle_EnableFocus(hButtonHidePane,false); XBtn_SetImageLeave(hButtonHidePane,image_res.hideleftpanel_leave); XBtn_SetImageStay(hButtonHidePane,image_res.hideleftpanel_stay); XBtn_SetImageDown(hButtonHidePane,image_res.hideleftpanel_stay);}HELE DemoCPlus::HandleCreateLeftPaneButton( HELE hPic,int x,int y,int cx,int cy ){ HELE hButton=XBtn_Create(x,y,cx,cy,NULL,hPic); XEle_SetBkTransparent(hButton,true); XEle_EnableFocus(hButton,false); XBtn_SetImageLeave(hButton,image_res.tabLeft_leave); XBtn_SetImageStay(hButton,image_res.tabLeft_stay); XBtn_SetImageDown(hButton,image_res.tabLeft_down); XBtn_SetImageCheck(hButton,image_res.tabLeft_stay); return hButton;}void DemoCPlus::HandleCreateLeftPane( HWINDOW hWindow ){ hLeftPane=XPic_Create(0,99,33,WINDOW_HEIGHT-99-55-22,hWindow); XPic_SetImage(hLeftPane,image_res.leftpane); HELE hButton=HandleCreateLeftPaneButton(hLeftPane,0,3,30,30); XBtn_SetIcon(hButton,image_res.tab1); hButton=HandleCreateLeftPaneButton(hLeftPane,0,33,30,30); XBtn_SetIcon(hButton,image_res.tab2); hButton=HandleCreateLeftPaneButton(hLeftPane,0,63,30,30); XBtn_SetIcon(hButton,image_res.tab3);}void DemoCPlus::HandleCreateMainTab( HWINDOW hWindow ){ hTabBar=XTabBar_Create(33,99,WINDOW_WIDTH-6-33,30,hWindow); XEle_SetBkColor(hTabBar,RGB(255,0,0)); XTabBar_AddLabel(hTabBar,L""); XTabBar_AddLabel(hTabBar,L""); XTabBar_AddLabel(hTabBar,L""); XTabBar_EnableTile(hTabBar,true); / HELE hButton=XTabBar_GetLabel(hTabBar,0); XEle_EnableFocus(hButton,false); XBtn_SetIcon(hButton,image_res.talktbico1); XBtn_SetImageLeave(hButton,image_res.talkLabel_leave); XBtn_SetImageStay(hButton,image_res.talkLabel_stay); XBtn_SetImageDown(hButton,image_res.talkLabel_down); XBtn_SetImageCheck(hButton,image_res.talkLabel_down); /// hButton=XTabBar_GetLabel(hTabBar,1); XEle_EnableFocus(hButton,false); XBtn_SetIcon(hButton,image_res.talktbico2); XBtn_SetImageLeave(hButton,image_res.talkLabel_leave); XBtn_SetImageStay(hButton,image_res.talkLabel_stay); XBtn_SetImageDown(hButton,image_res.talkLabel_down); XBtn_SetImageCheck(hButton,image_res.talkLabel_down); / hButton=XTabBar_GetLabel(hTabBar,2); XEle_EnableFocus(hButton,false); XBtn_SetIcon(hButton,image_res.talktbico3); XBtn_SetImageLeave(hButton,image_res.talkLabel_leave); XBtn_SetImageStay(hButton,image_res.talkLabel_stay); XBtn_SetImageDown(hButton,image_res.talkLabel_down); XBtn_SetImageCheck(hButton,image_res.talkLabel_down); //好友列表 hTree=XTree_Create(33,129,WINDOW_WIDTH-6-33,WINDOW_HEIGHT-130-55-22,hWindow); XTabBar_SetBindEle(hTabBar,0,hTree); XSView_SetSpacing(hTree,0,0,0,0); XTree_EnableLine(hTree,false); XTree_EnableButton(hTree,false); XTree_SetIndentation(hTree,0); XTree_SetItemHeight(hTree,28); XTree_SetSpacingLeft(hTree,10); HXCGUI hImageList1=XImageList_Create(11,6); XImageList_AddImage(hImageList1,image_res.imp_shrink); XImageList_AddImage(hImageList1,image_res.imp_expand); XImageList_AddImage(hImageList1,image_res.imp_icon_1); XImageList_AddImage(hImageList1,image_res.imp_icon_2); XImageList_AddImage(hImageList1,image_res.imp_icon_3); XImageList_AddImage(hImageList1,image_res.imp_icon_4); XImageList_AddImage(hImageList1,image_res.imp_icon_5); XImageList_AddImage(hImageList1,image_res.imp_icon_6); XTree_SetImageList(hTree,hImageList1); group1=XTree_InsertItem(hTree,L"我的好友[6/9]",XTREE_ROOT,1); group2=XTree_InsertItem(hTree,L"同事[6/10]",XTREE_ROOT,1); XTree_InsertItem(hTree,L"梦飞",group1,3); wchar_t name[100]={
0}; for(int i=0;i<8;i++) { swprintf(name,L"炫彩好友-%d",i); XTree_InsertItem(hTree,name,group1, i%6+2); } for(int i=0;i<10;i++) { swprintf(name,L"炫彩好友-%d",i); XTree_InsertItem(hTree,name,group2, i%6+2); } HELE hScrollBar=XSView_GetVScrollBar(hTree); XSBar_SetImageLeaveSlider(hScrollBar,image_res.scroll_thumb_leave); XSBar_SetImageStaySlider(hScrollBar,image_res.scroll_thumb_leave); XSBar_SetImageDownSlider(hScrollBar,image_res.scroll_thumb_down); XSBar_SetImageLeaveUp(hScrollBar,image_res.scroll_up_leave); XSBar_SetImageStayUp(hScrollBar,image_res.scroll_up_leave); XSBar_SetImageDownUp(hScrollBar,image_res.scroll_up_down); XSBar_SetImageLeaveDown(hScrollBar,image_res.scroll_down_leave); XSBar_SetImageStayDown(hScrollBar,image_res.scroll_down_leave); XSBar_SetImageDownDown(hScrollBar,image_res.scroll_down_down); XCGUI_RegEleMessage(hTree,XM_MOUSEDBCLICK,&DemoCPlus::OnFriendsLButtonUp); XCGUI_RegEleMessage(hTree,XM_RBUTTONDOWN,&DemoCPlus::EleRButtonDown);}bool DemoCPlus::OnWndNCEndDrawWindow( HWINDOW hWindow,HDC hdc ){ XDraw_HImage(hdc,image_res.hImageLogo,8,3); SetBkMode(hdc,TRANSPARENT); TextOut(hdc,100,28,L"炫彩界面库",5); return false;}bool DemoCPlus::OnWndSize( HWINDOW hWindow,UINT flags,SIZE *pSize ){ RECT rc={pSize->cx-38-10,10,pSize->cx-10,38}; XEle_SetRect(hWeather,&rc); rc.left=60; rc.top=25; rc.right=pSize->cx-60; rc.bottom=45; XEle_SetRect(hUserSign,&rc); rc.left=pSize->cx-10-22; rc.top=52; rc.right=rc.left+22; rc.bottom=rc.top+20; XEle_SetRect(hButtonSkin,&rc); rc.left=pSize->cx-10-22-22; rc.top=52; rc.right=rc.left+22; rc.bottom=rc.top+20; XEle_SetRect(hButtonMsg,&rc); rc.left=33; rc.top=99; rc.right=pSize->cx-6; rc.bottom=rc.top+30; XEle_SetRect(hTabBar,&rc); rc.left=33; rc.top=129; rc.right=pSize->cx-6; rc.bottom=pSize->cy-56-22; XEle_SetRect(hTree,&rc); rc.left=1; rc.top=pSize->cy-76; rc.right=rc.left+15; rc.bottom=rc.top+15; XEle_SetRect(hButtonHidePane,&rc); rc.left=3; rc.top=pSize->cy-68; rc.right=rc.left+42; rc.bottom=rc.top+42; XEle_SetRect(hButtonMainMenu,&rc); rc.left=50; rc.top=pSize->cy-73; rc.right=rc.left+22; rc.bottom=rc.top+22; XEle_SetRect(hButtonTool1,&rc); rc.left=72; rc.top=pSize->cy-73; rc.right=rc.left+22; rc.bottom=rc.top+22; XEle_SetRect(hButtonTool2,&rc); rc.left=94; rc.top=pSize->cy-73; rc.right=rc.left+22; rc.bottom=rc.top+22; XEle_SetRect(hButtonTool3,&rc); rc.left=50; rc.top=pSize->cy-50; rc.right=rc.left+22; rc.bottom=rc.top+22; XEle_SetRect(hButtonTool4,&rc); rc.left=72; rc.top=pSize->cy-50; rc.right=rc.left+22; rc.bottom=rc.top+22; XEle_SetRect(hButtonTool5,&rc); rc.left=94; rc.top=pSize->cy-50; rc.right=rc.left+60; rc.bottom=rc.top+22; XEle_SetRect(hButtonTool6,&rc); rc.left=0; rc.top=99; rc.right=33; rc.bottom=pSize->cy-55-22; XEle_SetRect(hLeftPane,&rc); rc.left=1; rc.top=73; rc.right=pSize->cx-8; rc.bottom=rc.top+26; XEle_SetRect(hSearchEdit,&rc); return false;}bool DemoCPlus::OnWndDestroy( HWINDOW hWindow ){ if(image_res.hImageLogo) XImage_Destroy(image_res.hImageLogo); return false;}bool DemoCPlus::OnFriendsLButtonUp( HELE hEle, POINT *pPt ){ int id=XTree_HitTest(hEle,pPt); if(group1==id || group2==id) { if(XTree_IsExpand(hEle,id)) { XTree_SetItemImage(hTree,id,0); XTree_Expand(hEle,id,false); } else { XTree_SetItemImage(hTree,id,1); XTree_Expand(hEle,id,true); } } else { wchar_t* lpText = XTree_GetItemText(hTree,id); MessageBox(0,lpText,0,0); } return false;}void DemoCPlus::CreateWnd(){ int style=XC_SY_DEFAULT&~XC_SY_DRAW_CAPTION_ICON; style&=~XC_SY_DRAW_CAPTION_TITLE; //创建窗口 hWindow = XWnd_CreateWindow(0,0,WINDOW_WIDTH,WINDOW_HEIGHT,L"炫彩界面库-窗口",NULL,style); XWnd_EnableDragWindow(hWindow,true); XWnd_SetBorderSize(hWindow,3,3,3,3); XWnd_SetRoundSize(hWindow,9); XWnd_SetCaptionHeight(hWindow,22); XWnd_SetMinWidth(hWindow,250); XWnd_SetMinHeight(hWindow,300); XWnd_EnableBorderStrokeInner(hWindow,false); XWnd_EnableBorderStrokeOuter(hWindow,false); LoadImageRes(); //加载图片资源 //窗口背景图片 XWnd_SetImageNC(hWindow,image_res.image_bk); //关闭按钮 HELE hClose=XWnd_GetButtonClose(hWindow); HandleButton_Close(hClose); //最大化按钮 HELE hMax=XWnd_GetButtonMax(hWindow); HandleButton_Max(hMax); //最小化按钮 HELE hMin=XWnd_GetButtonMin(hWindow); HandleButton_Min(hMin); //天气 CreateWeatherButton(hWindow); //头像 HELE hFace=XBtn_Create(10,0,48,48,NULL,hWindow); XBtn_EnableCursorHand(hFace,true); HandleButton_Face(hFace); //状态 HELE hUserState=XBtn_Create(60,0,32,22,NULL,hWindow); HandleButton_UserState(hUserState); //签名 hUserSign=XBtn_Create(60,25,WINDOW_WIDTH-60-62,20,L"签名:www.xcgui.com",hWindow); HandleButton_UserSign(hUserSign); //搜索框 hSearchEdit=XEdit_Create(1,73,WINDOW_WIDTH-8,26,hWindow); HandleEdit_Search(hSearchEdit); //创建工具按钮 HandleCreateToolButton(hWindow); //主菜单按钮 HandleCreateMainMenuButton(hWindow); //创建左边工具面板 HandleCreateLeftPane(hWindow); //tab页 HandleCreateMainTab(hWindow); hMenu = CreatePlayerCombox(); XWnd_Adjust(hWindow); //XCGUI_RegWndNCMessage(hWindow,XWM_NCENDPAINT,&DemoCPlus::OnWndNCEndDrawWindow); //XCGUI_RegWndMessage(hWindow,WM_SIZE,&DemoCPlus::OnWndSize); //XCGUI_RegWndMessage(hWindow,WM_DESTROY,&DemoCPlus::OnWndDestroy); XCGUI_RegWndMessage(hWindow, XWM_MENUSELECT, &DemoCPlus::My_MenuSelect); XWnd_ShowWindow(hWindow,SW_SHOW);}bool DemoCPlus::EleRButtonDown( HELE hEle,UINT flags,POINT *pPt ){ int id = XTree_HitTest(hEle,pPt); if(group1!= id && group2 != id) { POINT pt=*pPt; RECT rc; XListBox_GetItemRect(hEle,1,&rc); XEle_PointToNCWnd(hEle,&pt); HWINDOW hWindow = XEle_GetHWindow(hEle); ClientToScreen(XWnd_GetHWnd(hWindow),&pt); XMenu_Popup(hMenu,XWnd_GetHWnd(hWindow),pt.x,pt.y); } return false;}HMENUX DemoCPlus::CreatePlayerCombox(){ HMENUX hMenu = XMenu_Create(); XMenu_AddItem(hMenu,201,L"添加"); XMenu_AddItem(hMenu,202,L"重命名"); XMenu_AddItem(hMenu,203,L"删除"); XMenu_SetAutoDestroy(hMenu, false); return hMenu;}BOOL DemoCPlus::My_MenuSelect( HWINDOW hWindow,int id ){ wchar_t lID[10]; wsprintf(lID, L"item%d",id); //XTRACE("菜单ID=%d\n",id); MessageBox(0,lID,0,0); return false;}int APIENTRY _tWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPTSTR lpCmdLine, int nCmdShow){ XInitXCGUI(); DemoCPlus lDemo; lDemo.CreateWnd(); XRunXCGUI(); return 0;}
View Code

ok 暂时先这样 但是这个select相应事件 居然是相对于wnd全局的,真尼玛不给力!

转载地址:http://scaxx.baihongyu.com/

你可能感兴趣的文章
数值积分中的辛普森方法及其误差估计
查看>>
Web service (一) 原理和项目开发实战
查看>>
跑带宽度多少合适_跑步机选购跑带要多宽,你的身体早就告诉你了
查看>>
广平县北方计算机第一届PS设计大赛
查看>>
深入理解Java的接口和抽象类
查看>>
java与xml
查看>>
Javascript异步数据的同步处理方法
查看>>
iis6 zencart1.39 伪静态规则
查看>>
SQL Server代理(3/12):代理警报和操作员
查看>>
Linux备份ifcfg-eth0文件导致的网络故障问题
查看>>
2018年尾总结——稳中成长
查看>>
JFreeChart开发_用JFreeChart增强JSP报表的用户体验
查看>>
度量时间差
查看>>
通过jsp请求Servlet来操作HBASE
查看>>
Shell编程基础
查看>>
Shell之Sed常用用法
查看>>
3.1
查看>>
校验表单如何摆脱 if else ?
查看>>
<气场>读书笔记
查看>>
web安全问题分析与防御总结
查看>>