让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看看效果吧。。。。

 

如果你这时候觉得,虽然在编辑框中的文字没有被选中,但是这个只读的编辑框是灰色的,怎样让它变成白色的那种背景呢?

欲知后事如何,请看下回分解。。。。

 

下回分解让只读的编辑框有白色的背景

posted @ 2013-08-21 07:31  He_LiangLiang  阅读(747)  评论(0编辑  收藏  举报