Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 17.04.2010, 02:05   #1
856100
Форумчанин
 
Регистрация: 12.08.2008
Сообщений: 135
По умолчанию popupmenu на несколько компонентов

Здравствуйте! У меня назначен один popupmenu на несколько компонентов (пусть будут TImage). Как мне узнать, какой компонент вызвал popupmenu (хотяб имя)?
Будь проще, бери пример с одноклеточных
856100 вне форума Ответить с цитированием
Старый 17.04.2010, 02:08   #2
856100
Форумчанин
 
Регистрация: 12.08.2008
Сообщений: 135
По умолчанию

Вопрос решен.
Будь проще, бери пример с одноклеточных
856100 вне форума Ответить с цитированием
Старый 11.01.2012, 21:10   #3
demiancz
Форумчанин
 
Регистрация: 28.09.2010
Сообщений: 246
По умолчанию

Как решен вопрос? Меня тоже волнует этот вопрос.
Смотреть фильмы HD Фильмы для планшетов
demiancz вне форума Ответить с цитированием
Старый 11.01.2012, 21:27   #4
kettanaito
Веб-дизайнер
Форумчанин
 
Аватар для kettanaito
 
Регистрация: 11.08.2011
Сообщений: 305
По умолчанию

Разве не значение Sender отвечает за это?
kettanaito вне форума Ответить с цитированием
Старый 11.01.2012, 22:29   #5
demiancz
Форумчанин
 
Регистрация: 28.09.2010
Сообщений: 246
По умолчанию

А пример можно. Я вот к примеру что бы привязать один popupmenu ко всем кнопкам сделал так:
procedure TForm1.FormCreate(Sender: TObject);
var
i : Integer;
begin
for i := 0 to ComponentCount-1 do
if (Components[i] is TBitBtn) then
(Components[i] as TBitBtn).PopupMenu := PopupMenu1;
end;

А как теперь получить свойство Caption именно той кнопки для которой вызывается PopupMenu
Например: Если нажал на PopupMenu то Edit1.Text = Caption нажатой кнопки
Смотреть фильмы HD Фильмы для планшетов
demiancz вне форума Ответить с цитированием
Старый 11.01.2012, 22:39   #6
kettanaito
Веб-дизайнер
Форумчанин
 
Аватар для kettanaito
 
Регистрация: 11.08.2011
Сообщений: 305
По умолчанию

Опиши свойство PopupMenu1 - onPopup. Как-то так:
Код:
ShowMessage(TBitBtn(Sender).Caption);
kettanaito вне форума Ответить с цитированием
Старый 11.01.2012, 23:13   #7
demiancz
Форумчанин
 
Регистрация: 28.09.2010
Сообщений: 246
По умолчанию

Цитата:
Сообщение от kettanaito Посмотреть сообщение
Опиши свойство PopupMenu1 - onPopup. Как-то так:
Код:
ShowMessage(TBitBtn(Sender).Caption);
Ошибка
Missing operator or semicolon
Смотреть фильмы HD Фильмы для планшетов
demiancz вне форума Ответить с цитированием
Старый 11.01.2012, 23:16   #8
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

эта ошибка относиться к предыдущей строке обычно.
пропустили ; гдето.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 11.01.2012, 23:26   #9
demiancz
Форумчанин
 
Регистрация: 28.09.2010
Сообщений: 246
По умолчанию

Ошибка когда нажимаю мышей на кнопке
For loop control variable must be simple local variable

Код у меня такой
procedure TForm1.PopupMenu1Popup(Sender: TObject);
begin
if Form2.sBitBtn1.Caption = 'Коловорот' then
Form2.sBitBtn1.Caption := TsBitBtn(Sender).Caption;
end;
Смотреть фильмы HD Фильмы для планшетов
demiancz вне форума Ответить с цитированием
Старый 11.01.2012, 23:33   #10
kettanaito
Веб-дизайнер
Форумчанин
 
Аватар для kettanaito
 
Регистрация: 11.08.2011
Сообщений: 305
По умолчанию

Код:
procedure TForm1.PopupMenu1Popup(Sender: TObject);
begin
if TsBitBtn(Sender).Caption = 'Коловорот' then ShowMessage(TsBitBtn(Sender).Caption);
end;
Вы это хотите сделать?
kettanaito вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
PopupMenu пауэрлифтинг Общие вопросы Delphi 2 03.03.2010 14:52
КАк сделать Палитру компонентов в несколько рядов? Izhic Компоненты Delphi 0 02.07.2009 14:05
PopupMenu Патрон Общие вопросы Delphi 7 15.06.2008 14:04
PopupMenu TaTT DoGG Компоненты Delphi 13 23.05.2008 13:19
PopupMenu Teen4jump Общие вопросы Delphi 10 12.03.2008 13:42