Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

PopupMenu и спец. фонты [D7, Win2k]


happyboy ©   (2003-02-11 18:31:00) 

Люди!
В проге должны использоваться национальные (армянские) фонты.
Всё нормально, только это нехорошее PopupMenu фонты не принемает,остальные компоненты ведут себя как паиньки.
Расакладка клавиатуры армянская, фонт формы и всех других компанентов армянский, даже машину перезагружал-не помогло.
С Delphi4,5 таких глюков не было.


happyboy   (2003-02-12 13:44:00) [1]

Установка OwnerDrow непомогает.
Если я правильно понял:
SystemParametersInfo(SPI_SETNONCLIENTMETRICS,sizeof(NONCLIENTMETRICS),PMyStruct,SPIF_UPDATEINIFILE);
PMyStruct^.lfMenuFont:=? (Как указать шрифт ?)
Что из себя предтавляет LOGFONT и как я могу с помощью этой структуру указать на уже сущестфующий шрифт?

З.Ы. Я правильно понял:этот метод изменит шрифт меню во всех приложениях и останется в системе после перезагрузки?



Игорь Шевченко   (2003-02-12 11:48:00) [2]

Лечится это
1) установкой OwnerDraw у меню и рисованием текста любым шрифтом, в том числе и армянским.
2) Вызовом SystemParametersInfo (SPI_SETNONCLIENTMETRICS, ...)
С указанием нужного шрифта меню (lfMenuFont) в структуре NonClientMetrics.

Второй способ действует на все приложения, первый - только на твое


happyboy   (2003-02-12 11:41:00) [3]

Лечится это так:Desktop/Properties/Appearance/Sceme создаёш новый Scheme и фонт везде ставиш армянский, минимум неудобств (русские меню в виде крякозябров).


Наверх

Титульная страница Поиск, карта сайта Написать письмо