Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.07.25;
Скачать: CL | DM;

Вниз

Как автоматически убирать/показывать полосы прокрутки в TMemo?   Найти похожие ветки 

 
TechnoDreamer   (2004-07-08 21:48) [0]

Хочется что полоса прокрутки появлялась только если текст не помещается в Мемо. Если ставить ScrollBars в ssNone, ssVertical то она есть всегда, даже если текст есть. Что делать?


 
KilkennyCat ©   (2004-07-09 00:47) [1]

можно и вручную.. посмотреть текущее количество линий у Мемо, посмотреть шрифт, умножить линии на высоту шрифта плюс поправка и сравнить с высотой мемо... Единственный нюанс: как только появится скролл - линий станет больше, и надо либо еще вводить поправку на это, или смириться с задержкой исчезновения скролла, когда текста меньше. Но есть способ и точнее, ежели покопаться около TextOut


 
GanibalLector ©   (2004-07-09 01:28) [2]

криво,но хоть что-то...
procedure TForm1.Memo1Change(Sender: TObject);
begin
if Memo1.Lines.Count>5 then Memo1.ScrollBars:=ssVertical
else Memo1.ScrollBars:=ssNone;
end;


 
TechnoDreamer   (2004-07-09 11:08) [3]

Да уж не сильно хороший вариант, особенно если учесть что размер мемо меняется с размером формы. Видимо придется всё таки в ручную считать. Странно, что такая возможность не реализована, ведь в большинство программ ведут себя именно так.



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

Текущий архив: 2004.07.25;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.024 c
3-1088399015
Sirus
2004-06-28 09:03
2004.07.25
Передача свежих данных на сервер по модему...


14-1088947184
Nick Denry
2004-07-04 17:19
2004.07.25
Электронные книги


4-1087044511
Delphins
2004-06-12 16:48
2004.07.25
Как узнать RAS пароли в Delphi?


3-1088521244
Sergej
2004-06-29 19:00
2004.07.25
Как заставить грид EhLib обновить значение Footer-а?


1-1089354023
Максим
2004-07-09 10:20
2004.07.25
Как сделать у Button что-то на подобие у Label OnMouseLeave?