![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 12.11.2008
Сообщений: 10
|
![]()
Создаю динамически форму, на ней кнопки...
Проблема, не могу создать для кнопок события.... Код:
|
![]() |
![]() |
![]() |
#2 |
Android Developer
Старожил Подтвердите свой е-майл
Регистрация: 19.02.2007
Сообщений: 3,708
|
![]()
у TButton OnClick имеет тип (вроде
![]() p.s. подобные вещи так писать не рекоммендуется... вы уж определитесь то ли пишите юзая ООП или пишите без ООП ![]() |
![]() |
![]() |
![]() |
#3 |
*
Старожил
Регистрация: 22.11.2006
Сообщений: 9,201
|
![]()
Я уже рассказывал простейший способ, как это решить.
1. Бросаете на форму кнопку. 2. Делаете по ней даблклик - открывается пустая процедура обработки клика. 3. Пишете код в этом обработчике. 4. Там, где вы напузырили 40 штук вопросительных знаков - прописываете ссылку на этот обработчик. 5. Убираете с формы теперь уже ненужную кнопку. Все. |
![]() |
![]() |
![]() |
#4 |
Пользователь
Регистрация: 12.11.2008
Сообщений: 10
|
![]()
А если формы нет совсем?
|
![]() |
![]() |
![]() |
#5 |
*
Старожил
Регистрация: 22.11.2006
Сообщений: 9,201
|
![]() |
![]() |
![]() |
![]() |
#6 |
Новичок
Джуниор
Регистрация: 28.12.2008
Сообщений: 1
|
![]()
Есть форма,
Есть процедура procedure TForm1.onClick(Sender: TObject); begin showmessage('www'); end; Есть кнопка на форме Button1 по клику делается: procedure TForm1.Button1Click(Sender: TObject); var t:tbutton; begin t:=tbutton.Create(self); t.Width:=50; t.Height:=50; t.Left:=100; t.Top:=150; t.Parent:=form1; t.Caption:='222'; t.OnClick:=form1.onClick(sender); ВОТ ТУТ ПО ВАШИМ ЗАПИСЯМ ВСЕ ДОЛЖНО РАБОТАТЬ ! А САМИ ПРОБЫВАЛИ? end; А ВОТ ЭТО ЧИТАЛИ? [Error] Unit1.pas(43): Incompatible types: 'TNotifyEvent' and 'procedure, untyped pointer or untyped parameter' |
![]() |
![]() |
![]() |
#7 |
Баламучу слегка...
Участник клуба
Регистрация: 01.11.2006
Сообщений: 1,585
|
![]()
zekx, пишешь глупости и хочешь нормального результата? А написать так, как полагается не пытался? А именно
t.OnClick:=form1.onClick; Почему делается так, а не иначе объяснять надо или все-таки талмуд почитаешь, прежде чем свое ры людям высказывать? |
![]() |
![]() |
![]() |
#8 |
Новичок
Джуниор
Регистрация: 23.08.2010
Сообщений: 1
|
![]()
вот вы не поверите но оно таки не работает. причем у "родной" кнопки вызов идет а у "наследника" нет...
with TControlClass(Form1.Panel1.Controls[i].ClassType).Create(self) do begin Parent := p; Left := Form1.Panel1.Controls[i].Left; Top := Form1.Panel1.Controls[i].Top; OnClick:=button2.OnClick; end; |
![]() |
![]() |
![]() |
#9 |
Пользователь
Регистрация: 28.05.2010
Сообщений: 82
|
![]()
tramvajman, можно просто объявить класс, создать метод с такими же параметрами, как обработчик события (для OnClick - Sender: TObject), и присвоить этот метод обработчику события
Код:
|
![]() |
![]() |
![]() |
Опции темы | Поиск в этой теме |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
динамическое создание компонентов | DOLBY | Компоненты Delphi | 10 | 17.10.2010 14:03 |
Динамическое создание формы | Rifler | Общие вопросы Delphi | 6 | 11.09.2008 20:50 |
Динамическое создание объекта | ANGa | Помощь студентам | 3 | 10.04.2008 18:14 |
Динамическое создание фрейма | s-force | Общие вопросы Delphi | 9 | 05.09.2007 16:56 |
Динамическое создание WebBrowser | DragonLand | Работа с сетью в Delphi | 2 | 20.08.2007 21:47 |