Главная страница
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.026 c
1-1128312994
Laymer
2005-10-03 08:16
2005.10.23
Динамически создать Кнопку и процедуру OnClick


4-1124372254
DID
2005-08-18 17:37
2005.10.23
Список устройств


2-1127885122
Andrey235
2005-09-28 09:25
2005.10.23
Как переслать переменную


1-1128237757
тт
2005-10-02 11:22
2005.10.23
Подскажите ссылку на примеры(или хелп) работы с Word97-2000.


8-1116864991
кактусбел
2005-05-23 20:16
2005.10.23
Перекодировка из exe в swf и обратно