Вниз
Скачать: CL | DM;

TMainMenu + ownerdraw   Найти похожие ветки 

 
esVer   (2002-11-25 11:05) [0]

Имеется главное меню на форме со стилем ownerdraw. При смене шрифта, которым прорисовывается меню, необходимо сказать меню о необходимости пересчитать размер элементов основной строки меню и перерисовать её. Не подскажете, какие сообщения надо послать меню, чтобы добиться желаемого результата?


 
Игорь Шевченко ©   (2002-11-25 16:05) [1]

DrawMenuBar ?

А также обрабатывать событие OnMeasureItem, где и устанавливать размеры элементов меню.


 
esVer   (2002-11-26 10:38) [2]

Для основной строки DrawMenuBar не работает однозначно.
OnMeasureItem тоже. Проблема возникает только при необходимости отрисовки основной строки, выпадающие меню рисуются нормально.
Заставить пересчитать размер можно изменив Caption одного из TMenuItem в основной строке. Заставить перерисоваться меню можно изменив размер формы. Мне хочется знать как это сделать по человечески (через API), а не через одно место... :(


 
Игорь Шевченко ©   (2002-11-26 11:30) [3]

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 14:20) [4]

Угу, спасибо. Вторая часть вопроса (про перерисовку) отпадает. Это после борьбы с MeasureItem я на DrawMenuBar забил и забыл.
Осталось только научиться заставлять пересчитывать размер TMenuItem :)



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.018 c
4-37465
AlexandrRya
2002-11-24 00:01
2003.01.13
GetCurrentThread() в Service


1-37163
down
2002-12-29 15:10
2003.01.13
Реинициализация компонентов


1-37211
TALLA
2002-12-28 18:47
2003.01.13
Как сделать Drag&Drop нескольких одинаковых объектов?


14-37352
Top Gun
2002-12-21 15:07
2003.01.13
проблемы с новым детонатором


1-37111
Элина
2002-12-28 10:01
2003.01.13
Как напечатать TImage?




   Наверх