读书人

关于(多行)文本框的两个有关问题

发布时间: 2012-03-07 09:13:51 作者: rapoo

求助:关于(多行)文本框的两个问题
1、如何往(多行)文本框插入字符串,并且自动滚动到最后。比如在文本框现有的内容后面添加字符串。不要用SetDlgItemText,因为当文本框的内容本身很多时这样好像不大好,而且这种做法好像太幼稚,我现在就是这么做的……

2、如何改变(多行)文本框的背景色。我知道重写WM_CTLCOLOR的办法,但是这样有个问题是只能在文本框的有字符的行改变背景色,而在文本框还没有字符的地方,它的颜色仍是背景色,所以有没有办法令整个文本框的背景色都改变呢?

[解决办法]
重载这个类
[解决办法]
1. 这不需要控制吧.. 直接用鼠标不行吗..?

2. CreateSolidBrush( 设置成和你文字背景一样的颜色 );

SetTextColor( RGB(255, 255, 255) );
SetBKColor( RGB(0, 255, 0) );
CreateSolidBrush( RGB(0, 255, 0) );



[解决办法]
1、::SendMessage(hWndEditBox,EM_SETSEL,0x0FFFFFFF,0x0FFFFFFF);
  ::SendMessage(g_hWndEditBox,EM_REPLACESEL,(WPARAM)FALSE,(LPARAM)(LPCTSTR) "你要追加的文本 ");

2、用WM_CTLCOLOR不错,可能是你的代码有问题。你必须要把刷子句柄返回去。

读书人网 >VC/MFC

热点推荐