首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ Builder >

RichEdit的内容同步更新到Image下,发现慢一个字

2012-09-23 
RichEdit的内容同步更新到Image上,发现慢一个字我在RichEdit的Onchange事件中,有如下代码,目的是RichEdit

RichEdit的内容同步更新到Image上,发现慢一个字
我在RichEdit的Onchange事件中,有如下代码,目的是RichEdit输入什么,能同步的更新到Image上。运行以上代码以后,发现Image的显示比RichEdit上慢一些,不知如何解决了

C/C++ code
             BitBlt(Image1->Canvas->Handle,         0,0,    RichEdit1->Width,    RichEdit1->Height,    GetDC(RichEdit1->Handle),    0,0,          SRCCOPY);   ReleaseDC(RichEdit1->Handle, GetDC(RichEdit1->Handle));   Image1->Refresh();


[解决办法]
你这是画richText

C/C++ code
void __fastcall TForm2::RichEdit1Change(TObject *Sender){// Image1->Canvas->TextOutA(0,0,RichEdit1->Text);//RichEdit1->Refresh();  //加这一句或下面都可以 就好了RichEdit1->Repaint();BitBlt(Image1->Canvas->Handle,         0,0,    RichEdit1->Width,    RichEdit1->Height,    GetDC(RichEdit1->Handle),    0,0,          SRCCOPY);   ReleaseDC(RichEdit1->Handle, GetDC(RichEdit1->Handle));   Image1->Refresh();}
[解决办法]
你在事件中不停的GetDC和ReleaseDC,效率不高。
[解决办法]
截获RichEdit的WM_PAINT,画到Image
[解决办法]
RichEdit1Change里加这句还慢?
//RichEdit1->Refresh(); //加这一句或下面都可以 就好了
RichEdit1->Repaint();

热点排行