让Edit编辑框中的文字不被选中
问题描述:有一个对话框,里面就放了个只读的编辑框, 在对话框显示前给编辑框SetWindowText了内容,可是对话框显示出来后,编辑框的内容老是那种蓝色覆盖被选中的状态。
这太不和谐了,怎么让Edit编辑框中的文字不被选中呢?
解决办法:
1 BOOL CTestDlg::OnInitDialog() 2 { 3 // 此处省略程序自动生成的那些代码 4 // 。。。。。。 5 // 。。。。。。。 6 7 CEdit* pEdit = (CEdit*)GetDlgItem(IDC_EDIT1); 8 pEdit->SetWindowText("aaaaaaa \r\n bbbbbbbb"); 9 pEdit->SetFocus(); 10 // MSDN查看SetSel函数的介绍 11 // 此处,是让光标指到文本最末尾 12 pEdit->SetSel(-2, -1); 13 14 return false; // return TRUE unless you set the focus to a control 15 }
// 技术重点,非本人原创。这是本人参考的地址:http://www.myexception.cn/vc-mfc/384092.html
已经讲完了。请自己运行一个Demo看看效果吧。。。。
如果你这时候觉得,虽然在编辑框中的文字没有被选中,但是这个只读的编辑框是灰色的,怎样让它变成白色的那种背景呢?
欲知后事如何,请看下回分解。。。。
下回分解:让只读的编辑框有白色的背景