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

Вниз

Проблема в OnMesureItem для TMenuItem?   Найти похожие ветки 

 
Bambino Programmino   (2005-09-29 15:24) [0]

Здравствуйте, Мастера! Подскажите пожалуйста.

Хочу сделать в полоске главного меню сделать большой шрифт, пытаюсь выставить в OnMesureItem соответствующую высоту, а ничего не получается, полоска главного меню не меняет своего размера. Как быть?

Вот привожу свой код:


procedure TMain.mn1MeasureItem(Sender: TObject; ACanvas: TCanvas; var Width, Height: Integer);
var
TopLevel: Boolean;
begin
 with TMenuItem(Sender) do begin
   TopLevel := GetParentComponent is TMainMenu;
   if TopLevel then
     Height := 100
   else
     Height := 20;
   if IsLine then Height := 4;
 end;
end;


Спасибо!


 
Игорь Шевченко ©   (2005-09-29 15:36) [1]

А у меню свойство OwnerDraw установлено ?


 
Bambino Programmino   (2005-09-29 15:44) [2]

Да, свойство OwnerDraw установил в True, но все-равно не помогает. У меня такое ощущение, что OnMesureItem на TopLevel не распространяется....


 
Bambino Programmino   (2005-09-29 16:18) [3]

Ребят, ну неужели никак нельзя победить эту проблему?


 
Bambino Programmino   (2005-09-30 06:10) [4]

Пытался изменить в файле Menus.pas процедурку OnMesureItem. Вообще никакого эффекта. Странная особенность в OnAdvancedDrawItem такая вот штука работает:


var TopLevel: Boolean;
....

with TMenuItem(Sender) do begin
TopLevel := GetParentComponent is TMainMenu;
if TopLevel then ShowMessage("It is TopLevel");
end;


А вот в OnMesureItem месаж не показывает. Такое ощущение, что OnMesureItem вообще игнорит полоску главного меню... Хотя в борландском файле Menus.pas в обработчике OnMesureItem подобная конструкция (имеется ввиду попытка обращения к TopLevel) используется, а смысл тогда?

Так вот вопрос в том, можно ли все-таки как-то изменить размер TopLevel или это борландский касяк и тут уже ничего не поделаешь?



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

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

Наверх




Память: 0.47 MB
Время: 0.062 c
3-1126160356
ks
2005-09-08 10:19
2005.10.23
Изменение пароля БД Paradox из приложения


2-1127996286
Dimon777
2005-09-29 16:18
2005.10.23
Как передать SQL-запросу период времени в виде параметра?


4-1124405168
NikNet
2005-08-19 02:46
2005.10.23
помогите сохранить экран на API...?


14-1128071221
Steepe Wolf
2005-09-30 13:07
2005.10.23
CristalReport


1-1127985556
BaxTMaH
2005-09-29 13:19
2005.10.23
Как посчитать количество столбцов в DBGride?