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

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

Глюк или крив.руки? TMenuItem.Checked [D7, WinXP]


MetalFan ©   (2006-11-12 11:17:00) 

был проект под D6, перешел на D7.
что имеем:
есть mm:TMainMenuи pm:TPopupMenu,
есть al:TActionListс ai:TAction.
ко всем (al,mm,pm) подключен один TImageList
у mm и pm есть по mi: TMenuItem, которым назначен ai с выбранным ImageIndex.
есть некая переменная
FFlag: boolean;
есть код:

...
TForm.aiExecute(Sender: TObject);
begin
 FFlag := not FFlag;
end;

TForm.aiUpdate(Sender: TObject);
begin
 TAction( Sender ).Checked := FFlag;
end;
...

в D6 было все нормально, если Checked - то картинка в меню обводилась рамочкой.
в D7 вид не изменяется((( хотя mi.Checked = true;
версия делфи: 7.0 (Build 4.453)
Мастера, зашел в тупик!!!
Хелп!!!


MetalFan   (2006-11-13 16:34:00) [1]

нет, дело не в этом. это косяк VCL...
после выполнения моего кода и экшн и менюитем правильно присваивается Checked


Anatoly Podgoretsky   (2006-11-13 11:02:00) [2]

> vl_chel  (13.11.2006 10:28:04)  [4]

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

if Sender is TAction then TAction(Sender).Checked := FFlag;


vl_chel   (2006-11-13 10:28:00) [3]

А Sender кто ??? может здесь, у меня были проблемы именно из за явного приведения типов для Sender a


MetalFan   (2006-11-13 08:26:00) [4]

поставил обратно D6. а так либо OnAdvancedDraw перекрывать, либо в сорцах VCL править... другого пути я не нашел(


Правильный Вася   (2006-11-12 18:26:00) [5]

решение расскажи, а?


MetalFan   (2006-11-12 15:36:00) [6]

тему можно закрыть...


Наверх

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