Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Низкоуровневое программирование > Win Api
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 30.05.2007, 00:15   #1
VDLab
Embedder
Пользователь
 
Аватар для VDLab
 
Регистрация: 01.11.2006
Сообщений: 68
По умолчанию Обновить Memo

Такая вот проблема:
Имеется Мемо, в него время от времени добавляется текст, при этом естественно скроллбар должен смещаться вниз, чтобы был виден только что добавленный текст. Вопрос со скроллбаром решен функцией SetScrollPos, но почему то при установке скроллбара в нижнее положение, текст прокручивается не вниз, а вверх, до начала! Всякие Repaint'ы, Refresh'и, Update'ы эффекта не дают. Идеи закончились, надежда на вас...
[SHIFT] вправо, [SHIFT] влево считается [ESCAPE]ом и карается REBOOTом!
VDLab вне форума Ответить с цитированием
Старый 30.05.2007, 00:39   #2
Nemon
Армия Рассейская
Форумчанин
 
Аватар для Nemon
 
Регистрация: 06.12.2006
Сообщений: 175
По умолчанию

А ты попробуй курсор в самый низ текста перемещать
Сделаем ночь ярче!!! - Ракетные войска стратегического назначения
Центральный клуб туристов РВСН
Nemon вне форума Ответить с цитированием
Старый 30.05.2007, 15:35   #3
ZhekON
Форумчанин
 
Аватар для ZhekON
 
Регистрация: 24.01.2007
Сообщений: 323
По умолчанию

попробуй через курсор, там чтото SetPos или чтото такое...
Всё проще чем вы думаете, нужно только правильно подойти к тому или иному вопросу?
ZhekON вне форума Ответить с цитированием
Старый 30.05.2007, 23:54   #4
VDLab
Embedder
Пользователь
 
Аватар для VDLab
 
Регистрация: 01.11.2006
Сообщений: 68
По умолчанию

Пробовал, курсор ставится в конец текста, Мемо на это не реагирует.
Я вот думаю, какое сообщение нужно послать этому Мемо через API, что скроллбар был перемещен? Есть здесь знатоки WinApi? Подскажите пожалуйста.
[SHIFT] вправо, [SHIFT] влево считается [ESCAPE]ом и карается REBOOTом!
VDLab вне форума Ответить с цитированием
Старый 31.05.2007, 00:30   #5
Alar
Александр
Администратор
 
Аватар для Alar
 
Регистрация: 28.10.2006
Сообщений: 17,758
По умолчанию

VDLab, чтобы получить ответ по WinApi, нужно как минимум запостить в тот раздел.
Alar вне форума Ответить с цитированием
Старый 31.05.2007, 19:16   #6
VDLab
Embedder
Пользователь
 
Аватар для VDLab
 
Регистрация: 01.11.2006
Сообщений: 68
По умолчанию

2 Alar, вообще то тема начиналась вопросом не по WinApi, открывать же новую тему с тем же вопросом ИМХО нецелесообразно, я видел немало форумов "распухших" до невероятных размеров в т.ч. и из за буквального следования таким правилам.
Если же это дело принципа, перенесите эту тему в соответствующий раздел.
[SHIFT] вправо, [SHIFT] влево считается [ESCAPE]ом и карается REBOOTом!
VDLab вне форума Ответить с цитированием
Старый 31.05.2007, 22:01   #7
Jeni
Форумчанин
 
Регистрация: 31.05.2007
Сообщений: 486
Сообщение

Цитата:
Сообщение от VDLab Посмотреть сообщение
...но почему то при установке скроллбара в нижнее положение, текст прокручивается не вниз, а вверх, до начала! Всякие Repaint'ы, Refresh'и, Update'ы эффекта не дают. Идеи закончились, надежда на вас...
Странно, простенькая тестовая программа показала, что при добавлении текста Memo всегда показывает последнюю строку, даже без всяких SetScrollPos.
На всякий случай можете попробовать
Memo1.SelStart := 1000000;
Memo1.SelLength := 100;
т.е. выделить N-е количество символов явно за концом текста.
Jeni вне форума Ответить с цитированием
Старый 02.06.2007, 01:43   #8
Rouse_
Пользователь
 
Аватар для Rouse_
 
Регистрация: 31.05.2007
Сообщений: 56
По умолчанию

Вниз можно крутить только через штангенциркуль...
Цитата:
procedure TForm1.Button1Click(Sender: TObject);
begin
Memo1.Lines.Add('qwe');
SendMessage(Memo1.Handle, EM_SCROLL, SB_PAGEDOWN, 0);
end;
Vae Victis
(Горе побежденным (лат.))
Демки с открытым кодом:
http://rouse.drkb.ru
Rouse_ вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
как обновить Dr web? jenja Безопасность, Шифрование 2 09.03.2009 14:23
Как обновить Nod32 jenja Софт 1 04.03.2009 01:27
как обновить окно??? nimf Общие вопросы Delphi 4 22.01.2008 18:46
В Memo сделать так, чтобы текст был разного цвета, разноцветный memo Artem Компоненты Delphi 3 07.09.2007 13:40
как обновить параметры отображения? ЧИЖ Win Api 1 06.04.2007 17:26