| 
| 
 | Вопрос # 57/ вопрос открыт / | 
 |  Здравствуйте уважаемые эксперты!Как известно, есть 2 типа окон с полосами прокрутки.
 1) Когда при создании окна были указаны стили WS_HSCROLL и/или WS_VSCROLL (как в Блокноте).
 2) Когда окно было создано без вышеуказанных стилей, но к нему "прикручены" отдельные скроллы (напр. MS Word). В этом случае окно, горизонтальный и вертикальный ScrollBar имеют каждый свой хендл.
 Вопросы касаются второго случая:
 1) Как определить хендлы горизонтального и вертикального скролла, если известен хендл связанного с ними окна?
 2) Как определить хендл окна, если известен хендл связанного с этим окном горизонтального или вертикального скролла?
 Заранее спасибо за любую оказанную помощь!
 
|  |   Вопрос задал: Yurchik (статус: 3-ий класс)Вопрос отправлен: 22 июня 2006, 15:45
 Состояние вопроса: открыт, ответов: 1.
 |  Ответ #1. Отвечает эксперт: Вадим К Прямого способа скорее всего нет. Но можно сделать хитрей.Вначале в цикле перебираем дочерние компоненты. Если вы рассматриваете чужое приложение, то с помощью API функций, если свою - то можно с помощью свойства Controls.
 Каждый найденый элемент проверяем на то, скролл это или нет. Так как может быть, что в программе несколько скроллов, то необходимо также проверять их координаты и сравнивать с координатами окна.
 Если вы не знаете, как сделать, какоее-то с перечисленых действий, почитайте это
 www.DelphiWorld.narod.ru\base\chg_first_edit_text.html
 www.DelphiWorld.narod.ru\base\other_windows.html
 www.DelphiWorld.narod.ru\base\other_windows2.html
 
|  | Ответ отправил: Вадим К (статус: Академик)Время отправки: 23 июня 2006, 11:00
 
 |  
 Мини-форум вопросаМини-форум пуст. Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте. |