Вниз
Скачать: CL | DM;

Как связать переменную с опр. кнопкой, зная Name этой кнопки?   Найти похожие ветки 

← →
Setor   (2006-05-30 15:58) [0]

Как связать переменную с объектом кнопки, зная Name этой кнопки?

Упрощённый пример: некая процедура должна кликать по определённой кнопке (кнопок много) и название (свойство Name) этой кнопки передаётся в параметре в качестве строки. Требуется связать переменную типа TButton с выбранной кнопкой.

Это должно выглядеть похожем на данный код. Но представленный код конечно же нерабочий. ButtonName - это имя кнопки, управление над которой нужно получить.

procedure TForm1.Test();
var
 WorkButton: TButton;
begin
 // Нерабочее связывание
 WorkButton:= TButton( "ButtonName" );

 // Далее работаем с выбранной кнопкой
 WorkButton.Click();
end;


← →
Setor   (2006-05-30 16:10) [1]

Нашёл решение...

With TForm1 (FindComponent("Button1")) do
   Enabled:= true;


← →
MBo ©   (2006-05-30 16:10) [2]

FindComponent


← →
MsGuns ©   (2006-05-30 16:29) [3]

Обращаться к объектам по их именам - не лучший способ "общения"


← →
novill ©   (2006-05-30 16:42) [4]


> MsGuns

ВАши предложения?


← →
Setor   (2006-05-30 16:43) [5]


> Обращаться к объектам по их именам - не лучший способ "общения"

У меня есть форма изменения неких параметров. Тип всех параметров одинаковый. Количество их около 10. У каждого параметра есть несколько свойств (trackbar, checkbox, button) и чтобы не писать один и тот же код 10 раз приходится делать таким образом. Id компонента передаю через Tag.

Можно было как вариант - сделать выпадающий список этих опций, но было решено отобразить их все на одной форме для удобной настройки.

В предыдущем моём посте глупая ошибка - должно быть With TButton (FindComponent("Button1")) ...


← →
umbra ©   (2006-05-30 17:01) [6]

параметр представлен как класс?


← →
Setor   (2006-05-30 18:08) [7]


> параметр представлен как класс?

Нет. Я не очень жалую объектную модель Delphi, в отличии от других языков, на которых пишу, т.к. использую его в основном для быстрого кодинга небольших нужных мне утилит. В основном сетевые приложения.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.025 c
2-1149058692
Zhekson
2006-05-31 10:58
2006.06.18
почему ValInt := StrToInt( 1 ); выдаёт EConvertError


3-1145312015
h8394E
2006-04-18 02:13
2006.06.18
SQL в {CONSOLE APPLICATION}


1-1147112151
Fl@sh
2006-05-08 22:15
2006.06.18
из query в TMemorySream и обратно


2-1149153427
tort
2006-06-01 13:17
2006.06.18
Где гарантия что прога будет работать?


15-1148657333
Новичоккк
2006-05-26 19:28
2006.06.18
Virtual PC и PAE




   Наверх