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

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

Как узнать ИНДЕКС кнопки на ToolBar(е) [D6]


NikNet ©   (2005-09-26 22:11:00) 

Например я щелкнул кнопку 3-ю как мне получить этот индекс этой кнопки?

Мне именно надо правой кнопкой мыши...


DVM   (2005-09-27 10:37:00) [1]

Если собрался делать таскбар на основе тулбаров - знай, что в версиях WIN ниже 98 тулбар не обладает необходимой функциональностью.


Джо   (2005-09-27 02:47:00) [2]


>  [3] GuAV ©   (27.09.05 02:43)
> А причём тут VCL ?

Упс...


GuAV   (2005-09-27 02:43:00) [3]

GanibalLector ©   (27.09.05 2:16) [1]
Джо ©   (27.09.05 2:34) [2]

А причём тут VCL ?


Джо   (2005-09-27 02:34:00) [4]


>  NikNet ©   (26.09.05 22:11)

Всем кнопкам на тулбаре присваиваешь единый обработчик OnMouseDown:

procedure TForm1.ToolButton1MouseDown(Sender: TObject;
 Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
 if (Button = mbRight) and (Sender is TToolButton)  then
   ShowMessage (IntToStr(TToolButton(Sender).Index))
end;

Или проблема в чем-то другом?


GanibalLector   (2005-09-27 02:16:00) [5]


procedure TForm1.ApplicationEvents1Message(var Msg: tagMSG;
 var Handled: Boolean);
 var P:TPoint;
begin
 if (Msg.message=WM_RButtonDown) and (Msg.hwnd=ToolBar1.Handle) then
 begin
   GetCursorPos(P);
   // и определяешь на совпадение курсора и расположения кнопки
 end;
end;


P.S. Очень может быть,что есть вариант получше


Наверх

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