|
|
|
Нарисовать линию на RichEdit
|
|||
|---|---|---|---|
|
#18+
В CBuilder пытаюсь нарисовать линию, разделяющую страницы на RichEdit средствами WINAPI. Линия рисуется, но имею некорректное поведение при редактировании текста. Может кто-то что нибудь подскажет? void __fastcall TForm1::FormActivate(TObject *Sender){ WindowProc=NewWindowProc; // подменяем процедуру окна } //-------------------------- static int n=0; // счетчик проходов через WM_PAINT //-------------------- void __fastcall TForm1::NewWindowProc(Messages::TMessage &ms){ PAINTSTRUCT ps; void *h=ri->Handle; // ri - это TRichEdit HDC hdc; POINT f1; int y=28; switch(ms.Msg){ case WM_PAINT: n++; lbl->Caption=n; hdc=BeginPaint(h,&ps); MoveToEx(hdc,y,y,&f1); LineTo(hdc,200,y); EndPaint(h,&ps); break; } this->WndProc(ms); } //--------------------------------------------------------------------------- void __fastcall TForm1::riKeyPress(TObject *Sender, char &Key){ // при редактировании перерисовывать ri->Invalidate(); lbl->Invalidate(); Application->ProcessMessages(); } ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.04.2004, 13:02:20 |
|
||
|
|

start [/forum/moderation_log.php?user_name=%D0%9C%D1%8B%D1%88%D1%8C%D1%8F%D0%BA]: |
0ms |
get settings: |
12ms |
get forum list: |
16ms |
get settings: |
18ms |
get forum list: |
17ms |
check forum access: |
6ms |
check topic access: |
6ms |
track hit: |
40ms |
get topic data: |
18ms |
get forum data: |
5ms |
get page messages: |
70ms |
get tp. blocked users: |
3ms |
| others: | 1372ms |
| total: | 1583ms |

| 0 / 0 |
