Главная страница
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.064 c
15-1264333660
Новичок
2010-01-24 14:47
2010.08.27
Электронный словарь в Delphi


2-1266744427
Тима
2010-02-21 12:27
2010.08.27
передача массива в функцию


15-1275545924
Alx2
2010-06-03 10:18
2010.08.27
Задачка про максимальный столб из "черепах"


2-1274169749
Sergey2
2010-05-18 12:02
2010.08.27
Перехватить ошибку при выполнении хранимой процедуры


15-1274957509
Kolan
2010-05-27 14:51
2010.08.27
Форма T-12