Форум: "Основная";
Текущий архив: 2005.06.29;
Скачать: [xml.tar.bz2];
ВнизКак динамически создавать кнопки с событиями для ActionToolBar? Найти похожие ветки
← →
Destroyer © (2005-06-04 20:47) [0]Есть ActionToolBar и ActionManager. Как правильно динамически добавлять и удалять в ActionToolBar кнопки со своими событиями? При использовании:
actiontoolbar1.Action.Create(Form1.ActionManager1);
получается ошибка доступа к памяти.
И возможно ли менять размер картинки ActionToolBar?
← →
Sun bittern © (2005-06-04 21:22) [1]ActionToolBar и ActionManager глючноватые компонентики, советую поискать альтернативу.
← →
Destroyer © (2005-06-04 23:09) [2]А еще какие-нибудь предложения есть?
← →
Abessalom (2005-06-05 06:36) [3]Вот это очень неправильно, и не только в этом контексте:
actiontoolbar1.Action.Create(Form1.ActionManager1);
Не совсем понятно, что значит
> менять размер картинки ActionToolBar
Изменить размер картинки (пиктограммы на кнопке) можно установкой ImageList с большими картинками. Как изменить размер кнопок панели, показано в примере
Пример использования Action компонентов:
type
TXPStyleButton1 = class(TXPStyleButton)
public
procedure CalcBounds; override;
end;
{ TXPStyleButton1 }
procedure TXPStyleButton1.CalcBounds;
begin
inherited;
Height := 50
end;
{ TForm1 }
procedure TForm1.ActionExecute(Sender: TObject);
begin
ShowMessage("ActionExecute");
end;
procedure TForm1.ActionToolBar1GetControlClass(Sender: TCustomActionBar;
AnItem: TActionClient; var ControlClass: TCustomActionControlClass);
begin
ControlClass := TXPStyleButton1;
end;
procedure TForm1.FormCreate(Sender: TObject);
var
Action: TCustomAction;
ActionClient: TActionClientItem;
begin
Exit;
if not Assigned(ActionToolBar1.ActionManager) then
begin
ActionToolBar1.ActionManager := ActionManager1;
ActionManager1.ActionBars.Add.ActionBar := ActionToolBar1;
end;
Action := TCustomAction.Create(ActionManager1);
Action.ActionList := ActionManager1;
Action.Caption := "My Action";
Action.OnExecute := ActionExecute;
ActionClient := ActionToolBar1.ActionClient.Items.Add;
ActionManager1.AddAction(Action, ActionClient);
end;
← →
Destroyer © (2005-06-05 14:16) [4]Большое спасибо, буду разбираться!
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2005.06.29;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.043 c