Модераторы: Poseidon, Snowy, bems, MetalFan

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> процедура в dpr-файле, ошибка при описании процедуры 
V
    Опции темы
CodeMonkey
Дата 19.11.2009, 16:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1839
Регистрация: 24.6.2008
Где: Россия, Тверь

Репутация: 38
Всего: 89



А, дьявол, @ слева я не заметил.
Прошу пардону.


Тем не менее, правильным будет:
Код
type
  TDummyClass=class
    class procedure Click(Sender: TObject);
  end;

class procedure TDummyClass.Click(Sender: TObject);
begin
  // ...
end;

...

Btns[i].OnClick := TDummyClass.Click;



--------------------
Опытный программист на C++ легко решает любые не существующие в Паскале проблемы.
PM MAIL WWW ICQ Skype GTalk Jabber   Вверх
Frees
Дата 19.11.2009, 19:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2233
Регистрация: 2.12.2005
Где: Екатеринбург

Репутация: 9
Всего: 54



Цитата(CodeMonkey @  19.11.2009,  19:37 Найти цитируемый пост)
Тем не менее, правильным будет:

правельнее сделать класс контейнер всех этих кнопок, а то какойто полу ООП получается

Добавлено через 4 минуты и 5 секунд
я что то понять не могу почему в моем варианте Sender nil


--------------------
Кольцов Виктор Владимирович
PM MAIL ICQ   Вверх
Демо
Дата 19.11.2009, 19:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1278
Регистрация: 3.11.2005

Репутация: 30
Всего: 50



Цитата(Frees @  19.11.2009,  19:17 Найти цитируемый пост)
я что то понять не могу почему в моем варианте Sender nil


Так он не передаётся в процедуру.


--------------------
    
PM MAIL ICQ Skype   Вверх
CodeMonkey
Дата 19.11.2009, 21:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1839
Регистрация: 24.6.2008
Где: Россия, Тверь

Репутация: 38
Всего: 89



Цитата(Frees @  19.11.2009,  19:17 Найти цитируемый пост)
я что то понять не могу почему в моем варианте Sender nil 

Потому что в OnClick ты присвоил указатель на метод. Указатель на объект не менялся.


--------------------
Опытный программист на C++ легко решает любые не существующие в Паскале проблемы.
PM MAIL WWW ICQ Skype GTalk Jabber   Вверх
Kusik
Дата 20.11.2009, 12:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 61
Регистрация: 9.12.2005
Где: Харьков

Репутация: нет
Всего: нет



Не могу не согласится с Демо, т.к. придется именно мудуль и делать с левым классом и процедурами. 

Frees, да, согласен, так проще, безусловно. Когда форма уже существует.- в описании формы связать какую процедуру с нажатием на кнопку. Но форма у меня создается так же как и кнопки. Да и вобще сам проект это только dpr-файл (уже и .res удалил, чтобы не путаться) Я вообще искал решение, надеясь что можно обойтись 1 файлом - dpr. Но, как указал Демо, на то, что в проекте нет секции implementation, пришлось создавать левый Юнит (.pas), описывать в нем левый класс и те процедуры, которые я хотел бы пристегнуть на определенные события в дпр-файле.
PM MAIL ICQ   Вверх
Kusik
Дата 20.11.2009, 14:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 61
Регистрация: 9.12.2005
Где: Харьков

Репутация: нет
Всего: нет



все. так и сделал, через левый модуль. спасибо за помощь

Это сообщение отредактировал(а) Kusik - 20.11.2009, 14:06
PM MAIL ICQ   Вверх
CodeMonkey
Дата 20.11.2009, 21:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1839
Регистрация: 24.6.2008
Где: Россия, Тверь

Репутация: 38
Всего: 89



Цитата(Kusik @  20.11.2009,  12:14 Найти цитируемый пост)
Но, как указал Демо, на то, что в проекте нет секции implementation, пришлось создавать левый Юнит (.pas), описывать в нем левый класс и те процедуры, которые я хотел бы пристегнуть на определенные события в дпр-файле. 

Вообще-то отдельный модуль здесь не нужен. И секция implementation тем более не при чём.


--------------------
Опытный программист на C++ легко решает любые не существующие в Паскале проблемы.
PM MAIL WWW ICQ Skype GTalk Jabber   Вверх
Демо
Дата 20.11.2009, 21:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1278
Регистрация: 3.11.2005

Репутация: 30
Всего: 50



Цитата(CodeMonkey @  20.11.2009,  21:07 Найти цитируемый пост)
Вообще-то отдельный модуль здесь не нужен. И секция implementation тем более не при чём.


Уг. Точно. Ступил. Не нужен модуль. Всё в файле проекта реализуется.




--------------------
    
PM MAIL ICQ Skype   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Общие вопросы"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0489 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.