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

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

Вернуться   Форум программистов > Delphi программирование > Компоненты Delphi
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 11.04.2014, 00:33   #1
Timon.cheg
Пользователь
 
Регистрация: 10.04.2014
Сообщений: 24
Восклицание Memo отменить автопрокрутку при добавлении строки

Доброго времени суток, уважаемые. Часто просматриваю этот форум и нахожу много полезного.
Помогите пожалуйста разобраться с задачкой.
Есть чат, строки в Memo со скроллом добавляются по средством Memo.Lines.Add. После чего каретка переводится автоматически в конец строк.
Хочу написать функцию отключения автоматической прокрутки, ничего дельного в интернете не нашел . да и справка особо не помогла. может кто может подсказать как это лучше реализовать ? Буду очень признателен
Timon.cheg вне форума Ответить с цитированием
Старый 11.04.2014, 07:39   #2
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 19,042
По умолчанию

Запомни до Add SelStart, после Add восстанови его
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 12.04.2014, 16:47   #3
Timon.cheg
Пользователь
 
Регистрация: 10.04.2014
Сообщений: 24
По умолчанию

Цитата:
Сообщение от Аватар Посмотреть сообщение
Запомни до Add SelStart, после Add восстанови его
А другими путями никак ?
Timon.cheg вне форума Ответить с цитированием
Старый 13.04.2014, 01:42   #4
Timon.cheg
Пользователь
 
Регистрация: 10.04.2014
Сообщений: 24
По умолчанию

В общем оформил так:

Код:
var
freezchat: boolean;
Mes: TWMVSCROLL;
if freezchat =true then
    begin
     poschat:= Memo1.Perform( EM_LINEFROMCHAR, Memo1.SelStart, 0 ); // запоминаем положение каретки.
    end;
//тут происходит добавление в мемо

if freezchat =true then
 begin
        Mes.Msg:= WM_VSCROLL;
        Mes.Pos:=poschat;          // задаем прокрутчику позицию
        Mes.ScrollCode:=SB_THUMBPOSITION; //прокрутили
        Memo1.Dispatch(Mes);   //присвоили
 end;
Timon.cheg вне форума Ответить с цитированием
Ответ


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

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Обновление формул при добавлении (удалении строки) transgd Microsoft Office Excel 8 12.05.2011 13:10
Копирование строки формул при добавлении записи в ячейку Uralmaster Microsoft Office Excel 17 01.02.2011 13:00
Изменение формулы при добавлении новой строки ggxxx Microsoft Office Excel 1 24.04.2010 10:09
ComboBox при добавлении строки cw_o Win Api 1 02.04.2010 09:20
Как заставить Itemindex в ListBox перемещаться при добавлении новой строки на онную ? DartMrakkk Общие вопросы Delphi 10 05.07.2007 11:54