Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.09.15;
Скачать: [xml.tar.bz2];

Вниз

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 вся ветка

Форум: "Основная";
Текущий архив: 2003.09.15;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.009 c
3-48437
denick
2003-08-24 04:03
2003.09.15
Помогите пожалуйста с SQL запросом.


9-48391
Uncle Archi
2003-03-09 15:37
2003.09.15
GLScene


1-48614
Layner
2003-09-02 15:13
2003.09.15
меню ABOUT (о программе)


14-48757
vasia
2003-08-26 09:19
2003.09.15
PDF


1-48596
INTAARI
2003-09-03 16:49
2003.09.15
Как открыть блокнот





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский