Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

ToolButton & DropDownMenu [D6, XP]


webpauk ©   (2007-10-26 10:54:00) 

как через ItemClick получить ToolButton?

положение таково:

создаются ToolButton-ы
Style:=tbsDropDown  
ToolButton.DropDownMenu:=Popup1

procedure TFormFrom.N1Click(Sender: TObject);
begin
  как получить ToolButton?
end;


Palladin   (2007-10-26 14:55:00) [1]

ну например

procedure TForm1.ToolButtonMM(Sender: TObject; Shift: TShiftState;   X, Y: Integer);
begin
 PopupMenu1.Tag:=Integer(Sender);
end;

procedure TForm1.DDMenuItem1Click(Sender: TObject);
begin
 ShowMessage(TComponent((Sender as MenuItem).GetParentMenu.Tag).Name);
end;

...
ToolButton1.OnMouseMove:=ToolButtonMM;
ToolButton2.OnMouseMove:=ToolButtonMM;
...


webpauk   (2007-10-26 14:38:00) [2]


> Dennis I. Komarov ©   (26.10.07 13:37) [11]


> webpauk   (26.10.07 12:47) [5]

как получить здесь: procedure TForm1.N1Click(Sender: TObject);
ToolButton, из которого было вызвано меню


Dennis I. Komarov   (2007-10-26 13:37:00) [3]

> [10] webpauk   (26.10.07 13:20)

Тогда советую изменить свое поведение и задавать вопросы конкретные.


webpauk   (2007-10-26 13:20:00) [4]


> Dennis I. Komarov ©   (26.10.07 13:19) [9]

никто и ничем
а вдруг...


Dennis I. Komarov   (2007-10-26 13:19:00) [5]

> webpauk


Думаешь что тебе кто-то чем-то обязан?


webpauk   (2007-10-26 13:07:00) [6]

алёёё


webpauk   (2007-10-26 12:49:00) [7]

procedure TForm1.N1Click(Sender: TObject);
begin
 ShowMessage(PopupMenu1.PopupComponent.Name) - ???
end;


webpauk   (2007-10-26 12:49:00) [8]

ToolBar!!!
а надо ToolButton!!!


webpauk   (2007-10-26 12:47:00) [9]


> ЮЮ ©   (26.10.07 12:07) [4]

да что ты?

unit Unit1;

interface

uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs, StdCtrls, ToolWin, ComCtrls, Menus;

type
 TForm1 = class(TForm)
   ToolBar1: TToolBar;
   Button1: TButton;
   PopupMenu1: TPopupMenu;
   N1: TMenuItem;
   procedure Button1Click(Sender: TObject);
   procedure N1Click(Sender: TObject);
 private
   { Private declarations }
 public
   { Public declarations }
 end;

var
 Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
 fBtn: TToolbutton;
 fI: Integer;
begin
 for fI := 1 to 10 do
 begin
   fBtn:=TToolButton.Create(ToolBar1);
   fBtn.Caption:=IntToStr(fI);
   fBtn.Style:=tbsDropDown;
   fBtn.DropdownMenu:=PopupMenu1;
   fBtn.Parent:=ToolBar1;
 end;

end;

procedure TForm1.N1Click(Sender: TObject);
begin
//
end;

end.


ЮЮ   (2007-10-26 12:07:00) [10]

Самый популярный вопрос недели:
http://www.delphimaster.ru/cgi-bin/forum.pl?n=18&id=1193379623


webpauk   (2007-10-26 11:59:00) [11]

алёнахххх


webpauk   (2007-10-26 11:24:00) [12]

еще есть варианты?


Dennis I. Komarov   (2007-10-26 10:58:00) [13]

TAction рулит!


Наверх

Титульная страница Поиск, карта сайта Написать письмо