Главная страница
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.081 c
15-1271104202
Юрий
2010-04-13 00:30
2010.08.27
С днем рождения ! 13 апреля 2010 вторник


2-1266257727
lamer6666
2010-02-15 21:15
2010.08.27
ZQuery1AfterScroll работает долго


2-1268471112
Тофер
2010-03-13 12:05
2010.08.27
Как подать звуковой сигнал с делфи?


15-1265062916
DillerXX
2010-02-02 01:21
2010.08.27
Где в ХР лежит файл с обоями на десктопе?


2-1273602560
novichek
2010-05-11 22:29
2010.08.27
TCPClient вторая посылка не проходит