C++ Win32项目STATIC TEXT 控件中响应点击,并改变文本颜色

以 STATIC TEXT 控件,写个点击 忘记密码 为例:

 

头文件(.h)中:
COMMAND_ID_HANDLER(IDC_STATIC_FORGETPWD, OnClickForgetPwd)

MESSAGE_HANDLER(WM_CTLCOLORSTATIC, OnCtlColor)

LRESULT OnCtlColor(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandle);
LRESULT OnClickForgetPwd(WORD /*wNotifyCode*/, WORD wID, HWND /*hWndCtl*/, BOOL& /*bHandled*/);  

 

.cpp文件中:

  LRESULT CLoginPDDlg::OnCtlColor(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandle)

{
    HDC hDC = (HDC)wParam;
    HWND hWnd = (HWND)lParam;
    if(hDC != NULL && hWnd != NULL && ::GetDlgCtrlID(hWnd) == IDC_STATIC_FORGETPWD)
    {
        ::SetBkMode(hDC, TRANSPARENT);
        ::CreatePen(PS_SOLID, 1, ::SetTextColor(hDC, RGB(00255)));    //设置文本颜色为蓝色
        return (LRESULT)(::GetStockObject(HOLLOW_BRUSH));
    }
    return 0;
}
LRESULT CLoginPDDlg::OnClickForgetPwd(WORD /*wNotifyCode*/, WORD wID, HWND /*hWndCtl*/, BOOL& /*bHandled*/)
{
    CAuthStringDlg oAuthStringDlg;
    return oAuthStringDlg.DoModal();
}

 

转载于:https://www.cnblogs.com/freemindblog/p/5591581.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值