Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.12.18;
Скачать: CL | DM;

Вниз

Обращение к компоненту по строке   Найти похожие ветки 

 
Saimon   (2005-11-30 12:37) [0]

Доброе время суток, мастера.

Я уже давно не работал с Дельфи и не могу вспомнить как реализовать процеду... Расчитываю на вашу помощь.

Есть строка, например, Form1.Button1.Caption
Нужно используя эту строку записать данные (например, КНОПКА 1) в свойство Caption компонента Button1, который висит на форме Form1.
Как это реализовать??

Заранее спосибо.
С уважением.
Saimon/


 
jack128 ©   (2005-11-30 12:52) [1]

все формы валяются в массиве Screen.Forms[], нужную тебе ищи перебором.  Найти кнопку на форме - TComponent.FindComponent. Задать published свойство можно с помощью функции из модуля TypInfo.  Та что что тебе нужна вроде SetStrProp называется..


 
Saimon   (2005-11-30 14:18) [2]

Так мне не только кнопка, а все контролы с опр. формы.

Их св-ва в файле сидят, типа этого

Form1.Button1.Caption=Кнопка1
Form1.Button1.Hint=Подсказка
Form1.Caption=форма1
Form1.Edit1.Text=редактор


т.е. в ини файле. Загрузить из него не все это не вопрос. А вот как текст после = (равно) вставить в соотв. св-во того или иного контрола (т.е. в тот контрол который прописан до символа =).

и, если не затруднить, можно на примере кода?


 
Form1   (2005-11-30 16:18) [3]

Нужно использовать переменную.

var s:string;

s:="Кнопка1";

Form1.Button1.Caption=s;

а в переменную данные из файла загрузитью


 
jack128 ©   (2005-11-30 17:01) [4]

Saimon   (30.11.05 14:18) [2]
Так мне не только кнопка, а все контролы с опр. формы

ну и? какая разница, кнопка или не кнопка. FindComponent найдет компонент с заданным именем..


 
Saimon   (2005-11-30 18:08) [5]

Ребята, поймити, в моем случае не благоразумно прописывать все свойства для каждого контрола.

Есть веди функция типа IntToStr, StrToInt и т.п. Мне нужно по ихнему принципу все реализовать. Т.е. типа этого:
Proc("Form1.Button1.Caption", "какая-нить строка");
и эта процедура запихивает в нужное свойство нужного компонента эту стороку.

Т.е. Привести строку к типу TObject или TComponent, что-ли?

Знаю, что на СиШарпе это мона сделать, но как на дельфи не могу вспомнить. Давно, года 3, не работал сним. А раньше делал такое, но как не помню (и исходников не сохранилось как на зло), поэтому и прошу вашей помощи.



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

Текущий архив: 2005.12.18;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.011 c
14-1133078119
ArtemESC
2005-11-27 10:55
2005.12.18
Обработчик прерываний


2-1133518087
JTAG
2005-12-02 13:08
2005.12.18
Краеведы , посоветуйте в чем могет быть причина


14-1132988411
Карелин Артем
2005-11-26 10:00
2005.12.18
Спам-фильтр в миранде по названию асечного клиента. Есть тако?


14-1132687718
Якут-замерз
2005-11-22 22:28
2005.12.18
Посоветуйте масляный радиатор


14-1132684095
ANB
2005-11-22 21:28
2005.12.18
Выбираю технологию





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский