WTL 中CEdit如何设置一个tip,当用户没有输入任何东西的时候作为提示

                                                                                                WTL 中CEdit如何设置一个tip,当用户没有输入任何东西的时候作为提示

 

1.   在声明CEdit  m_edtPhoneNumber的类里面声明一个变量:

      BOOL  m_bedtPhoneNumberInitState;

 

 

 

      在initDialog之类的函数里面:

     m_bedtPhoneNumberInitState=TRUE;

     m_edtPhoneNumber.SetWindowText(_T("请输入手机号"));

 

 

2.  在.h文件中添加:

     COMMAND_ID_HANDLER(IDC_EDIT_PHONE_NUMBER,OnEditCtrlMsg)

 

    LRESULT OnEditCtrlMsg(WORD /*wNotifyCode*/, WORD wID, HWND /*hWndCtl*/, BOOL& /*bHandled*/);

 

 

    在.cpp文件中实现:

   

LRESULT CXXX::OnEditCtrlMsg(WORD wNotifyCode, WORD wID, HWND hWndCtl, BOOL& bHandled)
{
	//如果获得焦点的时候,还是init状态,设置为FALSE
	if (wNotifyCode==EN_SETFOCUS)
	{
		CString  strEditText;
		m_edtPhoneNumber.GetWindowText(strEditText);

		if (m_bedtPhoneNumberInitState)
		{
			m_bedtPhoneNumberInitState=FALSE;
			m_edtPhoneNumber.SetWindowText(_T(""));
		}

	}
	//如果失去焦点的时候,还是空白的,那么设置为Init状态
	else  if (wNotifyCode==EN_KILLFOCUS)
	{
		CString  strEditText;
		m_edtPhoneNumber.GetWindowText(strEditText);

		if (strEditText.IsEmpty())
		{
			m_bedtPhoneNumberInitState=TRUE;
			m_edtPhoneNumber.SetWindowText(_T("请输入手机号"));
		}
		else
		{
			m_bedtPhoneNumberInitState=FALSE;
		}

	}

	return 0;
}


 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值