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

Вниз

TAction, TActionMenuBar   Найти похожие ветки 

 
zivan   (2008-08-12 16:11) [0]

В одно из меню в TActionMenuBar, динамически добавляются новые записи TAction, хочу на всех них сделать Radio переключатель, что бы можно было отметить только один из пунктов. Как этого добиться? (Я подозревая что надо что-то делать с AutoCheck и еще что-то, но я никак не придумаю)


 
stas ©   (2008-08-12 16:34) [1]

GroupIndex


 
zivan   (2008-08-12 17:10) [2]

Пробовал я это. Но после установки GroupIndex отличного от нуля полчаю AV-ошибку. Код добавления:

with ActionManager.ActionBars[1].Items[3].Items[5].Items.Add do
begin
  DynAction := TAction.Create(Self);
  with DynAction do
     GroupIndex := 1;
     OnExecute := _OnExecute;
     AutoCheck := True;
  end;
  Action := DynAction;
  Caption := ".....";
  if SomeBoolValue then
     DynAction.Checked := True;


Без выделенной строки все работает нормально, зато в работе при обработке _OnExecute получатся AV-шоибка.

Но мне нужно уже во время добавления отметить один из пунктов, а тут такая ошибка. Что сделать?


 
stas ©   (2008-08-12 17:13) [3]

а что в OnExecute?

P.S.   if SomeBoolValue then
    DynAction.Checked := True;

Можно упростить DynAction.Checked :=SomeBoolValue


 
zivan   (2008-08-12 17:31) [4]

В OnExecute примерно такое:
ShowMessage(THackMenuBar(Menu).FSelectedItem.Caption);

Но речь не об этом. Даже убрав все из OnExecute (Оставил только Exit), у меня получается при установленном GroupIndex AV-ошибка.


 
stas ©   (2008-08-12 17:36) [5]

У меня работает нормально, правда в Design-time создавал.
А это в момент выбора пункта меню срабатывает или при присвоении свойства Checked?


 
zivan   (2008-08-12 18:06) [6]

Если при создании устанавливаю:
GroupIndex, AutooCheck и Checked — тогда получаю AV. Стоит отключить Checked или GroupIndex то все работает без ошибок, но понятное дело, нужного функционала в таком случае нет.



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

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

Наверх




Память: 0.47 MB
Время: 0.02 c
8-1185991832
DelphiKettle
2007-08-01 22:10
2008.09.21
MediaPlayer


2-1218102039
9899100
2008-08-07 13:40
2008.09.21
Пункт меню из DLL


4-1196809281
GanibalLector
2007-12-05 02:01
2008.09.21
EFOpenError Процесс не может получить доступ к файлу


15-1217346194
Кое кто
2008-07-29 19:43
2008.09.21
Свежие шахматные партии


2-1218446900
REX2008
2008-08-11 13:28
2008.09.21
Подключение звукового файла