Текущий архив: 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.45 MB
Время: 0.006 c