Вниз
Скачать: CL | DM;

TRichEdit   Найти похожие ветки 

← →
lex7   (2003-09-03 14:51) [0]

Дело в следующем: в TRichEdit выводится информация о работе программы. Как сделать, чтобы при добавлении новой строки происходило скролирование текста вверх? Если использовать SelStart:=Length(Text), то это работает только если компонент имеет фокус.

пример:
var
i: integer;
begin
with RichEdit1 do
for i:=0 to 200 do Lines.Add(IntToStr(i)); // курсор должен находится всегда на последней добавленной строкеend;


← →
VMcL ©   (2003-09-03 14:53) [1]

ScrollBy(...) ?


← →
lex7   (2003-09-03 15:00) [2]

Может что не так делаю, но не получается:

var
i: integer;
begin
with RichEdit1 do
for i:=0 to 200 do
begin
Lines.Add(IntToStr(i));
ScrollBy(0, Canvas.TextHeight(IntToStr(i)));
end;
end;


← →
lex7   (2003-09-03 15:01) [3]

Текст смещается, полоса прокрутки - на месте...


← →
VMcL ©   (2003-09-03 15:06) [4]

Да, я уже и сам попробовал, нужно по-другому.


← →
lex7   (2003-09-03 15:07) [5]

И вновь вопрос открыт :)


← →
DVM ©   (2003-09-03 15:09) [6]


> Если использовать SelStart:=Length(Text), то это работает
> только если компонент имеет фокус.

selstart + setfocus?


← →
lex7   (2003-09-03 15:12) [7]

SetFocus не удобен тем, что если окно не может его иметь (напр. открыто поверх модальное окно), то будет ошибка. Если выполнять SetFocus только когда он возможен - опять плохо: при закрытии модального окна курсор останется на старом месте, хотя текста может добавиться очень много...


← →
VMcL ©   (2003-09-03 15:14) [8]

EM_LINESCROLL

например:
SendMessage(RichEdit1.Handle, EM_LINESCROLL, 0, 200);


← →
lex7   (2003-09-03 15:20) [9]

> VMcL
Ok, спасибо, то что надо...



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.013 c
1-48523
victor_ch
2003-09-02 14:40
2003.09.15
определение вида кодировки строки


14-48749
Knight
2003-08-26 08:06
2003.09.15
Miranda рулит...


1-48505
Evgeniy_K
2003-09-02 17:49
2003.09.15
маленькая альтернатива MessageBox


9-48389
Skyslider
2002-08-13 18:54
2003.09.15
Пошаговое создание платформенной стрелялки.


6-48683
Delpher_Gray
2003-07-14 13:14
2003.09.15
Как лучше всего передавать информацию через сокеты ?




   Наверх