📄 ebcontrol.h
字号:
* \def LVM_GETSELECTEDITEM
* \brief Gets the current selected item. This message is a internal message of listview.
*
* \code
* LVM_GETSELECTEDITEM
* \endcode
*
* \return the current selected item.
*/
#define ELVM_GETSELECTEDITEM 0xF11C
/**
* \def LVM_DELALLITEM
* \brief Removes all the items in listview.
*
* \code
* LVM_DEALLITEM
* \endcode
*/
#define ELVM_DELALLITEM 0xF11D
/**
* \def LVM_MODIFYHEAD
* \brief Changes the title of a column.
*
* \code
* LVM_MODIFYHEAD
* \endcode
*
*/
#define ELVM_MODIFYHEAD 0xF11E
//设置控件的背景色
//add by tjb
//wparam = newcolor
#define ELVM_SETBKCOLOR 0xF11F
//设置某个ITEM是否被选中
/*
* \code
* int p; //哪一行将被置为选中状态
* lParam = (LPARAM)p;
* \endcode
*/
#define ELVM_SETITEMSELECTED 0xF120
//当风格有EVLS_USECHECKBOX时,设置checkbox 的图片
//lparam = (LPARAM)szName;
//
#define ELVM_SETCHECKBOXIMG 0xF121
//iRows是否选中,选中返回1, 若无选中行返回0
//int iRows
//lParam = (LPARAM)iRows
#define ELVM_GETROWCHECKED 0xF122
//
/*
获取当前哪一行处于鼠标经过状态
*/
#define ELVM_GETMOUSEOVERITEM 0xF123
//
/*
设置某一行为鼠标经过状态
int p =(int)lParam;
出错返回-1
*/
#define ELVM_SETMOUSEOVERITEM 0xF124
//获取当前处于鼠标经过状态的那一行距离可见的第一行有几行
//如果当前没有哪一行处于鼠标经过状态则返回 -1
#define ELVM_GETMOUSEOVER_OFFSET 0xF125
//设置距离可见的第一行p行的那一行处于鼠标经过状态
/*
int p2 =(int)lParam;
出错返回-1
*/
#define ELVM_SETMOUSEOVER_OFFSET 0xF126
//自定义的按键按下消息,类似MSG_KEYDOWN但不同的是它能返回数据
/*
它的wParam跟MSG_KEYDOWN一样也有SCANCODE_ENTER,SCANCODE_CURSORBLOCKLEFT,
SCANCODE_CURSORBLOCKRIGHT,SCANCODE_CURSORBLOCKDOWN,SCANCODE_CURSORBLOCKUP
,SCANCODE_PAGEUP等
*/
#define ELVM_MSG_KEYDOWN 0xF127
//设置可见行 wparam = visable row
#define ELVM_SETVISABLEROW 0xF128
/** @} end of mgext_ctrl_listview_msgs */
/**
* \defgroup mgext_ctrl_listview_ncs Notification code of ListView control
* @{
*/
/**
* \def LVN_ADDITEM
* \brief This notification code informs parent window a certain item (row) added.
*/
#define ELVN_ADDITEM 1
/**
* \def LVN_ADDITEM
* \brief This notification code informs parent window a certain item (row) removed.
*/
#define ELVN_DELITEM 2
/**
* \def LVN_ADDCOLUMN
* \brief This notification code informs parent window a certain column added.
*/
#define ELVN_ADDCOLUMN 3
/**
* \def LVN_DELCOLUMN
* \brief This notification code informs parent window a certain column removed.
*/
#define ELVN_DELCOLUMN 4
/**
* \def LVN_ITEMCOLORCHANGED
* \brief This notification code informs parent window a certain item's color changed.
*/
#define ELVN_ITEMCOLORCHANGED 5
/**
* \def LVN_DELALLITEM
* \brief This notification code informs parent window all items removed.
*/
#define ELVN_DELALLITEM 6
/**
* \def LVN_SELCHANGE
* \brief This notification code informs parent window the current selected item
* has changed.
*/
#define ELVN_SELCHANGE 7
/**
*
* \def LVN_ITEMDBCLK
* \brief This notification code informs parent window the current selected item
* has be double clicked.
*/
#define ELVN_ITEMDBCLK 8
/**
* \def LVN_CRKEYDOWN
* \brief This notification code informs parent window the ENTER key has been pressed.
*/
#define ELVN_CRKEYDOWN 9
#define ELVN_VSCROLL 10
//当前控件从没有鼠标经过状态转为有鼠标经过状态
#define ELVN_ITEMMOUSEOVERED 11
//当前控件由处于鼠标经过状态转为失去鼠标
#define ELVN_NCITEMMOUSEOVERED 12
#define ELV_TEXT 1
#define ELV_BITMAP 2
#define ELV_BMPFILE 3
#define ELV_ICON 4
#define ELV_BOTH 5 //add by tjb 2004-4-14
//该风格既有图片,又有文字
/** @} end of mgext_ctrl_listview_ncs */
/****** Checkbox Control ******************************************************/
/**
* \defgroup Checkbox control
* @{
*/
#define CTRL_EBCHECKBOX ("ebcheckbox")
/** * \defgroup ctrl_Checkbox_styles Styles of button control*/
/***/
#define ECBS_CHECKBOX 0x00000001L//选择框
#define ECBS_RADIOBOX 0x00000002L//单选框
#define ECBS_TYPEMASK 0x0000000FL
/**/
#define ECBS_DEFAULT 0x00000000L//使用系统默认的图片
#define ECBS_BMPFILE 0x00000010L//自定义图片
#define ECBS_STYLEMASK 0x000000F0L
#define ECBS_BKALPHA 0x00000100L//背景透明否
/** @} end of ctrl_Checkbox_styles */
/*** \defgroup ctrl_Checkbox_states States of button control*/
#define ECBT_UNCHECKED 0x0000//未选中
#define ECBT_CHECKED 0x0001//选中
#define ECBT_INDETERMINATE 0x0002//无效
#define ECBT_MASK 0x000F
/** @} end of ctrl_button_states */
/*** \defgroup ctrl_Checkbox_msgs Messages of button control */
/**
* \def ECBM_GETCHECK
* \brief Retrieves the check state of a radio button or check box.
*
* An application sends a BM_GETCHECK message to retrieve
* the check state of a radio button or check box.
*
* \code
* ECBM_GETCHECK
* wParam = 0;
* lParam = 0;
* \endcode
*
* \return An integer indicates whether the button is checked.
*
* \retval BST_UNCHECKED The button is not checked.
* \retval BST_CHECKED The button is checked.
* \retval BST_INDETERMINATE The button is grayed because the state of the button is indeterminate.
*
* \sa ctrl_button_states
*/
#define ECBM_GETCHECK 0xF0F0
/**
* \def ECBM_SETCHECK
* \brief Sets the check state of a radio button or check box.
*
* An application sends a BM_SETCHECK message to set
* the check state of a radio button or check box.
*
* \code
* ECBM_SETCHECK
* int check_state;
*
* wParam = (WPARAM)check_state;
* lParam = 0;
* \endcode
*
* \param check_state The check state of button, can be one of the following values:
* - BST_UNCHECKED\n
* Want the button to be unchecked.
* - BST_CHECKED\n
* Want the button to be checked.
* - BST_INDETERMINATE\n
* Want the button to be grayed if it is a three states button.
*/
#define ECBM_SETCHECK 0xF0F1
/**
* \def ECBM_GETSTATE
* \brief Gets the state of a button or check box.
*
* An application sends a BM_GETSTATE message to
* determine the state of a button or check box.
*
* \code
* ECBM_GETSTATE
* wParam = 0;
* lParam = 0;
* \endcode
*
* \return An integer indicates the button state.
*
* \sa ctrl_button_states
*/
#define ECBM_GETSTATE 0xF0F2
/**
* \def ECBM_SETSTATE
* \brief Sets the state of a button.
*
* An application sends a BM_GETSTATE message to set the state of a
* button.
*
* \code
* BM_SETSTATE
* int push_state;
*
* wParam = (WPARAM)push_state;
* lParam = 0;
* \endcode
*
* \param push_state The push state of a button, can be one of the following values:
* - Zero\n
* Want the button to be unpushed.
* - Non zero\n
* Want the button to be pushed.
*/
#define ECBM_SETSTATE 0xF0F3
/**
* \def BM_SETSTYLE
* \brief Changes the style of a checkbox.
*
* An application sends a BM_SETSTYLE message to change the style of a button.
*
* \code
* BM_SETSTYLE
* int button_style;
*
* wParam = (WPARAM)checkbox_style;
* lParam = 0;
* \endcode
*
* \param button_style The styles of a checkbox:
*
* \sa ctrl_checkbox_styles
*/
#define ECBM_SETSTYLE 0xF0F4
/**
* \def ECBM_CLICK
* \brief Simulates the user clicking a button.
*
* An application sends a BM_CLICK message to simulate the user clicking a button.
*
* \code
* ECBM_CLICK
*
* wParam = 0;
* lParam = 0;
* \endcode
*/
#define ECBM_CLICK 0xF0F5
#define ECBM_SETTEXTCOLOR 0xF0F7
#define ECBM_GETTEXTCOLOR 0xF0F8
/** @} end of ctrl_checkbox_msgs */
/**
* \defgroup ctrl_checkbox_ncs Notification codes of button control
* @{
*/
/**
* \def ECBN_CLICKED
* \brief The ECBN_CLICKED notification message is sent when the user clicks a button.
*/
#define ECBN_CLICKED 0
#define ECBN_PAINT 1
#define ECBN_HILITE 2
#define ECBN_UNHILITE 3
#define ECBN_DISABLE 4
#define ECBN_DOUBLECLICKED 5
/**
* \def ECBN_PUSHED
* \brief The BN_PUSHED notification message is sent when the user pushes a button.
*/
#define ECBN_PUSHED BBN_HILITE
/**
* \def ECBN_UNPUSHED
* \brief The BN_UNPUSHED notification message is sent when the user unpushes a button.
*/
#define ECBN_UNPUSHED BBN_UNHILITE
/**
* \def ECBN_DBLCLK
* \brief The BN_DBLCLK notification message is sent when the user double-clicks a button.
*/
#define ECBN_DBLCLK BBN_DOUBLECLICKED
/** @} end of ctrl_checkbox */
/********************************************
* \def CTRL_PLAYGIF
* \brief The class name of static control.
*/
#define CTRL_PLAYGIF ("playgif")
typedef struct tagPlayGifData
{
char * giffile;
char * bkfile;
int gifx;
int gify;
}PLAYGIFDATA;
typedef PLAYGIFDATA * PPLAYGIFDATA;
#define GFS_BKTRANSPARENT 0x00000001 //背景透明,不用画背景
#define GFS_BKTRANSIMAGE 0x00000002 //背景为透明图片
#define GFS_BKNOTRANSFILE 0x00000004 //背景为不透明图片
#define GFS_BKSAVEBITMAP 0x00000008 //把图片装载后,保存图片结构直到控键销毁
#define GFS_CENTER 0x00000010
#define GFS_RIGHT 0x00000020
#define GFS_VCENTER 0x00000040
#define GFS_BOTTOM 0x00000080
#define GFS_NOLOOPFIRST 0x00000100 // 第一幅图片不参与循环
#define GFS_NORMALGIF 0x00000200 // 正常GIF ,与九宫图GIF相区别,及不用获得焦点就播放动画
#define GFS_GIFNORMAL 0x00001000 //组成GIF的图片画时的风格
#define GFS_GIFALPHA 0x00002000
#define GFS_GIFALPHAVALUE 0x00004000
#define GFS_GIFALPHACHANNEL 0x00008000
#define GFSS_UNFOCUS 0x0000 //未获得焦点
#define GFSS_FOCUS 0x0001 //获得焦点
#define GFM_NEXTIMAGE 0xF0F0
#define GFM_GETTIMES 0xF0F1
#define GFM_SETTIMER 0xF0F2 //设定定时器,使GIF变成动态
#define GFM_KILLTIMER 0xF0F3 //删除定时器,使GIF变成静态
#define GFN_SETFOCUS 0xF0F4 //通知获得焦点
#define GFN_KILLFOCUS 0xF0F5 //通知失去焦点
#define GFN_CLICKED 0xF0F6
/**
* \def GFM_CHANGEGIF
* \改变gif图片
* \code
* GFM_CHANGEGIF
*
* wParam = 0;
* lParam = (LPARAM) pPlaygifData;
* \endcode
*/
#define GFM_CHANGEGIF 0xF0F7
/**
*
*
**********************************************/
/********************************/
#define CTRL_EBFLASHPLAYER ("ebflashplayer")
typedef struct tagFlashPlayerAddData
{
int IsSound; // 决定是否播放声音
int timer_id; // 定时器ID
char * url; //文件名,或者路径
}FLASHPLAYERADDDATA;
/*wp:url,lp=bsound*/
#define FLP_PLAYFILE 0xF0F1
#define FLP_STOPFILE 0xF0F2
#define FLP_PAUSEFILE 0xF0F3
#define FLP_REWINDFILE 0xF0F4
/*************************************/
BOOL InitEbControl ( void );
void EbControlCleanUp (void);
void CtrlDrawPictrueToBK(HDC hdc, RECT * rect, const char * picname, int bmtype, int alpha);
extern BOOL RefreshChildInParent(HWND hwnd);
extern int GetFontCCharWidth (PLOGFONT font);
extern int GetFontCharWidth (PLOGFONT font);
extern BOOL RegisterPlayGifControl (void);
extern void PlayGifControlCleanup (void);
#ifdef __cplusplus
}
#endif
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -