限制EDITTEXT可输入的字符个数

打开窗体初始句柄

		LPCDLGTEMPLATE hDlg;   // handle to loaded resource
		hDlg = notify_config::GetResourceDialog( IDD_AUTHENTICATION_DIALOG );
		DialogBoxIndirectParam( NULL, 
								hDlg, 
								NULL,// GetActiveWindow(), 
								AuthenticationDlgProc,
								(LPARAM)&authPrintJob);
在回调函数 AuthenticationDlgProc 中message 的  case 为 WM_INITDIALOG 时进行设置,用到函数 SendMessage 来对EDITTEXT进行 EM_SETLIMITTEXT 设置

具体原型如下:

INT_PTR CALLBACK AuthenticationDlgProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
{
    switch (message)
	{
	case WM_INITDIALOG:
        {
         //Limit edit text lengths
         HWND usredit = GetDlgItem(hDlg, IDC_USERNAME);
         SendMessage( usredit, EM_SETLIMITTEXT, 256, 0);
        }
    }
}



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章