Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Общие вопросы > Динамически созданый объект


Автор: gavr 24.5.2005, 17:20
Создаю динамически TToolBar а на нем ToolButtons как можно узнать на какую из кнопок нажал пользователь? Спасибо.

Автор: _hunter 24.5.2005, 18:24
назначай создаваемым кнопкам Tag и в обработчике его проверяй

Автор: gavr 24.5.2005, 19:10
А как в самом обработчике обратиться к кнопке для этой проверки тега?

Автор: _hunter 24.5.2005, 19:24
приводи Sender к ToolButton

Автор: Yanis 24.5.2005, 19:40
Код

    Tb: TToolBar;
    Tbtn: TToolButton;
    procedure TBBtnClick(Sender: TObject);

{ ... }
procedure TForm1.Button2Click(Sender: TObject);
begin
  Tbtn := TToolButton.Create(Form1);
  Tbtn.Parent := Tb;
  Tbtn.Tag := Tb.ButtonCount;
  Tbtn.Caption := IntToStr(Tbtn.Tag);
  Tbtn.OnClick := TBBtnClick;
end;

procedure TForm1.TBBtnClick(Sender: TObject);
begin
  ShowMEssage(IntToStr((Sender as TToolButton).Tag));
end;

Автор: gavr 24.5.2005, 20:06
Cпасибо всем. разобрался!

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)