![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
TMainMenu + ownerdraw
esVer © (2002-11-25 11:05:00)Имеется главное меню на форме со стилем ownerdraw. При смене шрифта, которым прорисовывается меню, необходимо сказать меню о необходимости пересчитать размер элементов основной строки меню и перерисовать её. Не подскажете, какие сообщения надо послать меню, чтобы добиться желаемого результата?
esVer (2002-11-26 14:20:00) [1]Угу, спасибо. Вторая часть вопроса (про перерисовку) отпадает. Это после борьбы с MeasureItem я на DrawMenuBar забил и забыл.
Осталось только научиться заставлять пересчитывать размер TMenuItem :)
Игорь Шевченко (2002-11-26 11:30:00) [2]The application must call the DrawMenuBar function whenever a menu changes, whether or not the menu is in a displayed window.
Ку ?
esVer (2002-11-26 10:38:00) [3]Для основной строки DrawMenuBar не работает однозначно.
OnMeasureItem тоже. Проблема возникает только при необходимости отрисовки основной строки, выпадающие меню рисуются нормально.
Заставить пересчитать размер можно изменив Caption одного из TMenuItem в основной строке. Заставить перерисоваться меню можно изменив размер формы. Мне хочется знать как это сделать по человечески (через API), а не через одно место... :(
Игорь Шевченко (2002-11-25 16:05:00) [4]DrawMenuBar ?
А также обрабатывать событие OnMeasureItem, где и устанавливать размеры элементов меню.