Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2010.08.27;
Скачать: CL | DM;

Вниз

Как установить ширину PopupMenu при OwnerDraw = True   Найти похожие ветки 

 
L`Autour ©   (2008-08-04 07:38) [0]

Если вручную прорисовываю отдельные элементы меню, то ширина всего меню, определяется остальными элементами меню, иначе в качестве меню получаю узкую полоску.

И еще, если я делаю ручную прорисовку некоторых элементов меню своим шрифтом, то у остальных элементов при их первой прорисовке он сохраняется. Восстанавление шрифта на дефолтный происходит, только если над пунктом меню провести мышкой.


 
L`Autour ©   (2008-08-07 07:20) [1]

Все в отпусках?


 
mdw ©   (2008-08-07 10:08) [2]

Если правильно понял вопрос, то Вам нужно обрабатывать OnMeasureItem, а там Result:= MAKELONG(H, W).


 
mdw ©   (2008-08-07 10:15) [3]

По поводу второго, нужно смотреть как рисуете. Возможно не восстанавливаете шрифт после отрисовки.


 
L`Autour ©   (2008-08-08 08:45) [4]

первое попробую

по второму -  я пробовал просто удалять свой шрифт из DC-контектста меню (после моей обработки вывода),  но это не помагало.


 
mdw ©   (2008-08-08 10:23) [5]


> по второму -  я пробовал просто удалять свой шрифт из DC-
> контектста меню (после моей обработки вывода),  но это не
> помагало.

А старый восстанавливали? Должно быть примерно так:

var Font, OldFont: HFONT;
....
     OldFont:= SelectObject(DC, Font);
.........
     SelectObject(DC, OldFont);
     DeleteObject(Font);


 
L`Autour ©   (2008-08-08 13:45) [6]

сенк


 
L`Aurtour   (2008-08-09 07:58) [7]

DeleteObject(Font); - оказался лишним


 
MTsv DN   (2008-08-09 12:29) [8]

> DeleteObject(Font); - оказался лишним
Не думаю. Память надо беречь 8)


 
L`Autour ©   (2008-08-11 06:52) [9]

С памятью нормально - просто я забыл сказать, что шрифт свой шрифт создаю и уничтожаю при создании и удалении формы. А здесь его только к контексту цепляю.



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

Текущий архив: 2010.08.27;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.057 c
15-1266342135
Piter
2010-02-16 20:42
2010.08.27
Посоветуйте LiveCD / LiveDVD?


2-1265554936
nordic3
2010-02-07 18:02
2010.08.27
вертикальная синхронизация в OpenGL


2-1268812490
Вася
2010-03-17 10:54
2010.08.27
Как узнать, существует ли компонент?


4-1233696423
Дмитрий
2009-02-04 00:27
2010.08.27
Рескан USB устройств хранения


2-1271956369
Сергей
2010-04-22 21:12
2010.08.27
Нужна помошь (незнаю как описать)