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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 04.08.2009, 15:23   #1
Zeraim
Ra-Ra ?
Форумчанин
 
Аватар для Zeraim
 
Регистрация: 06.03.2008
Сообщений: 286
По умолчанию Как поставить OnMouseDown для создаваемых Image

Не знаю правильно ли назвал тему. В общем если выбрать компоненты в структуре и поставить какое-нибудь событие, то оно будет срабатывать для всех выбранных компонентов. А если я создаю компоненты по ходу работы программы, как это сделать ?
Zeraim вне форума Ответить с цитированием
Старый 04.08.2009, 17:18   #2
mutabor
Телепат с дипломом
Старожил
 
Аватар для mutabor
 
Регистрация: 10.06.2007
Сообщений: 4,929
По умолчанию

Создаешь метод класса, например формы TForm1 - это обязательное условие, обычные функции не катят, делаешь его совместимым с нужным событием (параметры имеются ввиду), и назначаешь его свойству созданного Image (в данном случае OnMouseDown). Теперь этот метод будет вызываться по событию.
The future is not a tablet with a 9" screen no more than the future was a 9" black & white screen in a box. It’s the paradigm that survives. (Kroc Camen)
Проверь себя! Онлайн тестирование | Мой блог
mutabor вне форума Ответить с цитированием
Старый 04.08.2009, 18:21   #3
Zeraim
Ra-Ra ?
Форумчанин
 
Аватар для Zeraim
 
Регистрация: 06.03.2008
Сообщений: 286
По умолчанию

Вот так правильно ? Просто вдруг что-то сделал не так и потом возникнут проблемы ?
Код:
type
  TES = class(TForm)
    ...
    procedure ImgClick(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

implementation
{$R *.dfm}
procedure TES.FormCreate(Sender: TObject);
begin
...
OnClick := ImgClick;
end;
...
(FindComponent('TImage'+IntToStr(numbImg)) as TImage).OnClick := ImgClick;
...
Zeraim вне форума Ответить с цитированием
Старый 04.08.2009, 20:50   #4
mutabor
Телепат с дипломом
Старожил
 
Аватар для mutabor
 
Регистрация: 10.06.2007
Сообщений: 4,929
По умолчанию

Там ты событию формы назначаешь. Вобщем так нужно:
Код:
type
  TForm1 = class(TForm)
    ...
    procedure ImgClick(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;
  MyImage: TImage;

implementation

...
MyImage:=TImage.Create(Form1);
MyImage.Parent:=Form1;
MyImage.OnClick:=ImgClick;
...

procedure TForm1.ImgClick(Sender: TObject);
begin
  //тут код на событие
end;
The future is not a tablet with a 9" screen no more than the future was a 9" black & white screen in a box. It’s the paradigm that survives. (Kroc Camen)
Проверь себя! Онлайн тестирование | Мой блог

Последний раз редактировалось mutabor; 04.08.2009 в 20:55.
mutabor вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как Как проверить кнопки мыши без OnMouseDown? Вадим Буренков Общие вопросы Delphi 3 22.05.2009 15:08
Возможно ли сделать рабочий Transparent для Image, созданной на динамической форме2, для формы1. Лукманов Александр Мультимедиа в Delphi 3 27.04.2009 14:12
Срочно : Требуется поставить запрет для иностранных IP для просмотра сайта. pornodiller Фриланс 2 06.11.2008 22:02
checkListBox1.OnMouseDown не работет при выделенном элементе. Как исправить? Izhic Компоненты Delphi 4 28.10.2008 17:41
Как поставить свою иконку для файлов SeRhy Общие вопросы Delphi 4 22.03.2008 01:58