Изменение размера Runtime-Invisible ActiveX
От: rus-k  
Дата: 11.04.06 13:22
Оценка:
Есть невидимый ActiveX контрол. К тому же он Windowless. В design-time он отображается как прямоугольник с текстом внутри. Текст доступен как свойство. Если его поменять, то прямоугольник должен растянуться, чтобы весь текст был виден. Теперь проблема: в методе, когда я изменяю текст, я не могу получить доступ к HWND (ибо windowless). Этот доступ мне нужен, чтобы получить HDC, в который я загружу нужный мне шрифт и измерю размер прямоугольника для отображения текста. Единственное место, где я могу получить HDC — это OnDraw. Задумка поменять размер контрола в методе по его отрисовке мне не нравится, но по другому не знаю как сделать. Я оповещаю контейнер об изменившемся моем размере, но я не могу сказать, что меня нужно перерисовать. Ведь после этого я выйду из OnDraw и буду считаться отрисованным. Вот и получается: я меняю размер, но не отрисовываюсь полностью. Если контрол подвинуть или заставить просто перерисоваться, то он отрисовывается полностью. Вопрос: как сделать изменение размера windowless runtime-invisible контрола, если его размер определяется с помощью HDC.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.