📄 cecreatebutton.h
字号:
#ifndef _CSWIMAGEBTN_H_
#define _CSWIMAGEBTN_H_
#pragma once
#define BTNCLASS _T("ImgBtnClass")
#define WM_SELECT WM_USER+50
#define WM_UNSELECT WM_USER+51
#ifndef CREATEBTN_EXPORTS
#define CREATEBTN_API __declspec(dllexport)
#else
#define CREATEBTN_API __declspec(dllimport)
#endif
typedef struct tagIMGBTNINFO
{
TCHAR* upID;
TCHAR* dnID;
TCHAR* dimID;
}IMGBTNINFO,*LPIMGBTNINFO;
//SWIMAGEBTN_API
enum BtnState
{
UP_STATE,
DN_STATE,
DIM_STATE
};
class CREATEBTN_API CECreateButton
{
public:
CECreateButton();
~CECreateButton();
BOOL CreateBtn(HWND hParent, UINT btnid,
HINSTANCE hInstBtn,
LPIMGBTNINFO info,
int x = 0, int y = 0,
int width =0,
int height = 0,
UINT Style = WS_CHILD|WS_VISIBLE);
void SetOffsetXY(int offx, int offy);
void SetImageUpOffsetXY(int offx, int offy);
VOID SetImageDnOffsetXY(int offx, int offy);
void SetTextOffset(int offset);
void OnUnSelect();
void OnSelect();
void OnKeyDown(WPARAM wParam, LPARAM lParam);
void OnKeyUp(WPARAM wParam, LPARAM lParam);
void ReleaseImage();
void Destroy();
void SetDim(BOOL dim);
void ChangeImage(LPIMGBTNINFO info);
void SetTitle(LPTSTR title);
void SetColor(COLORREF txtColor, COLORREF selColor);
void ShowBtn(BOOL bshow);
void SetFont(HFONT hFont);
protected:
static LRESULT BtnProc(HWND hWnd ,UINT msg, WPARAM wParam , LPARAM lParam);
private:
HWND m_hParent;
UINT m_uID;
// UINT m_style;
HINSTANCE m_hInst;
HBITMAP m_hUpBmp;
HBITMAP m_hDnBmp;
BtnState m_state;
BOOL m_bInit;
LPTSTR m_Title;
COLORREF m_txtColor;
COLORREF m_SelColor;
HFONT m_Font;
BOOL m_bDrawInRect;
int m_textOffset;
HWND m_hWnd;
int m_upOffx;
int m_upOffy;
int m_dnOffx;
int m_dnOffy;
void InitImage(LPIMGBTNINFO info);
BOOL CreateBtn(HWND hParent,UINT Style, int x, int y, int width , int height ,UINT id, HINSTANCE hInst);
};
#endif //_CSWIMAGEBTN_H_
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -