Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.012 c
2-1218546159
darova
2008-08-12 17:02
2008.09.21
Восстановить подключение к сетевому диску


15-1217577898
Ega23
2008-08-01 12:04
2008.09.21
переменные окружения и CGI в Delphi


15-1217074164
hidder
2008-07-26 16:09
2008.09.21
setup.ini


4-1194300418
Черный Шаман
2007-11-06 01:06
2008.09.21
Динамические слои прозрачности окна.


15-1217644447
alexandr.ilin
2008-08-02 06:34
2008.09.21
1c




   Наверх