Форум программистов, компьютерный форум, киберфорум
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.76/29: Рейтинг темы: голосов - 29, средняя оценка - 4.76
7 / 7 / 1
Регистрация: 26.02.2009
Сообщений: 65
1

Передача параметров в процедуру

09.05.2011, 16:06. Просмотров 5278. Ответов 6
Метки нет (Все метки)

В приложении динамически создается объект(не суть важно какой) для обработки события OnClick использую такой код:

Delphi
1
2
3
4
5
6
7
Private
 Procedure ButtonClick(Sender:TObject);
 
//Cоздается объект,например кнопка
 NewItem := TButtom.Create(self);
 NewItem.Caption:='Кнопка 1';
 NewItem.OnClick:=ButtonClick;
Как модифицировать код.чтобы процедуре можно было передать параметр типа String?
p.s. Пробовал такой вариант:
Delphi
1
2
3
4
Private
 Procedure ButtonClick(Sender:TObject;Var Param:string);
 
 NewItem.OnClick:=ButtonClick(self,'123');
- не получается
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
09.05.2011, 16:06
Ответы с готовыми решениями:

Передача параметров в процедуру
Есть класс формы, я прописал процедуру для редактирования формы, но передать в нее "список" не...

Передача параметров без типа в процедуру
Нужно передать процедуру параметры без типа, как это реализовать? Объясните, или хотя бы пример...

Передача параметров из командной строки в процедуру Delphi
Интересует, собственно, вопрос, как сделать такую штуку. При старте программы вызывается командная...

Передача параметров через список параметров формы
Hi all! У кого есть опыт передачи параметров через заголовочный список параметров формы? ...

6
5326 / 2038 / 439
Регистрация: 20.11.2009
Сообщений: 6,763
Записей в блоге: 1
09.05.2011, 16:42 2
да никак, таким методом, кроме если не написать свое событие на кнопку, так как в динамически создаваемых объектах, мы все же используем стандартные события такие как OnClick, в ней 1 параметр задан только, и программа ожидает этого что туда и войдет 1 параметр !

А вообще для чего это понадобилось? Может альтернатива найдется
0
5967 / 2094 / 736
Регистрация: 10.12.2010
Сообщений: 5,914
Записей в блоге: 3
09.05.2011, 16:43 3
Скорее всего вам придется создавать новый компонент-наследник от класса TButton и переопределить в нем это событие. Оно вам надо?
0
7 / 7 / 1
Регистрация: 26.02.2009
Сообщений: 65
09.05.2011, 19:43  [ТС] 4
Надо по нажатию на элемент меню открыть файл по ссылке которая передается в качестве параметра в процедуру открытия файла
0
5967 / 2094 / 736
Регистрация: 10.12.2010
Сообщений: 5,914
Записей в блоге: 3
09.05.2011, 22:30 5
Откуда она передается?
0
7 / 7 / 1
Регистрация: 26.02.2009
Сообщений: 65
10.05.2011, 02:50  [ТС] 6
Из другой процедуры, в которой собственно и создается динамически объект.Процедура вида form.create,но не в этом суть.Суть в том,что при нажатии на объект(кнопку например) вызывается процедура обработки нажатия в которую должен быть передан параметр типа string.Например: по нажатию на кнопку открывается файл,т.к. предполагается что мы заранее не знаем какой файл требуется открыть то этот параметр должен быть передан в процедуру по ссылке или по значению.
0
5967 / 2094 / 736
Регистрация: 10.12.2010
Сообщений: 5,914
Записей в блоге: 3
10.05.2011, 07:03 7
Вы вполне можете завести для этого глобальную переменную, записать, что нужно в Form.Create и использовать ее уже там, где вам нужно.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
10.05.2011, 07:03

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Передача параметров
День добрый! Подскажите как из формы авторизации передать в главную форму выбранного пользователя?...

Передача параметров в процедуру
Доброго времени суток. Нужна ваша помощь, знатоки! Возникла нужда в изучении процедур и передачи в...

Передача параметров в процедуру
Здравствуйте! У меня есть процедура которая строит график по заданном диапазону Sub...

Передача параметров в процедуру
Пока не нашел функцию ltoa, пытался добавить подсчет количества записанных байтов. Добавил параметр...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.