Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.07.04;
Скачать: CL | DM;

Вниз

Помогите пожайлуста с проблемкой   Найти похожие ветки 

 
jen_bond   (2002-06-23 01:06) [0]

Как можно узнать номер компонента с которого был вызван PopupMenu(есть 10 кнопок и к ним прекреплен один PopupMenu)!!!!


 
VID ©   (2002-06-23 01:18) [1]

Что есть вызов PopUp ? Нажатие правой кнопки крысы на объекте.
Обработаем это дело:
procedure TForm1.Button1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
IF Button = mbRight then ShowMessage(IntToStr(TButton(Sender).ComponentIndex));
end;

А теперь у всех остальных "баттонов", в object inspector в качестве обработчка onMouseDown укажи Button1MouseDown.

Всё.


 
jen_bond   (2002-06-23 01:26) [2]

Спасибо!
А возможно ли что бы не сразу при нажатии правой клавиши выдавалось сообщение, а при выборе в меню(PopupMenu) какого-нибудь понкта???


 
VID ©   (2002-06-23 01:31) [3]

Да.

Var: LastBtnInd:Integer=-1; //Глоб переменная

procedure TForm1.Button1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
IF Button = mbRight then LastBtnInd:= TButton(Sender).ComponentIndex;
end;

а при выборе какого-нить пункта контексного меню пишешь :
ShowMessage(IntToStr(LastBtnInd));


 
Anatoly Podgoretsky ©   (2002-06-23 01:46) [4]

.PopupComponent


 
jen_bond   (2002-06-23 01:55) [5]

А немножко поподробнее!!!

Заранее спасибо!!!


 
VID ©   (2002-06-23 01:55) [6]

что существенно сэкономин оперативную память, и улучшит читаемость кода ! ;)


 
Юрий Зотов ©   (2002-06-23 07:22) [7]

> VID
Зачем такие страшные навороты? Cущественно гробящие оперативную память и ухудшающие читаемость кода.

> jen_bond
У TPopupMenu есть свойство - PopupComponent. Оно как раз и указывает на тот компонент, при клике по которому правой кнопкой было вызвано это меню (см. справку). Его и используйте. И не надо ничего другого.


 
VID ©   (2002-06-23 11:56) [8]

to Юрий Зотов: я не знал про popupcomponent. Теперь знаю.



Страницы: 1 вся ветка

Текущий архив: 2002.07.04;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.008 c
1-9833
AMQ
2002-06-14 17:26
2002.07.04
JPEG in EXE


1-9895
KIG_S
2002-06-21 09:18
2002.07.04
Pause


14-10003
BJValentine
2002-06-04 17:17
2002.07.04
MS Excel 97


1-9891
Gamar
2002-06-18 14:34
2002.07.04
Текст под углом


3-9762
SergeiGenko
2002-06-11 11:38
2002.07.04
ExpressQuantumGrid Suite