![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как определить видимость ScrollBar а? [D3]
SuperVK © (2002-11-08 09:55:00)Как в MultiLine Editor контролах (и в частности в TRichEdit) определить, видим ли в текущий момент ScrollBar (горизонтальный и вертикатьный)?
SuperVK (2002-11-11 12:16:00) [1]Всё, спасибо.
Song (2002-11-11 09:02:00) [2]А чего сложного-то?
1.Через EM сообщение получите первую видимую строку. Высота будет равна высоте строк, убирающихся в клиентскую область компонента+межстрочный интервал.
2.Проверить наличие стилей SCROLL можно через GetWindowLong()
SuperVK (2002-11-11 06:05:00) [3]Эээээ...
Насколько я понял, WS_VSCROLL(HSCROLL) это то же самое, что и TCustomMemo.ScrollBars. И чего с ними делать ума не приложу.
А по поводу "подсчитать": я вроде бы видел в MSDN то ли какую-то константу, то ли свойство, выдающее количество строк, видимых в контролле, но сейчас, хоть убей не могу найти его. А если как-то по другому считать, то с TRichEdit это надо считать аж высоту текста. Нет путей попроще?
Song (2002-11-08 09:58:00) [4]WS_VSCROLL(HSCROLL)
А вообще, Вы определите для себя когда он [скролбар] появляется. И Вы сразу поймёте что-нужно сосчитать, чтобы определить есть скролбар или нет.