Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2005.12.18;
Скачать: [xml.tar.bz2];

Вниз

Можно ли обратиться к свойствам компонента через форму?   Найти похожие ветки 

 
Pil ©   (2005-12-01 16:11) [0]

Уважаемые мастера!
Допустим на форме несколько компонентов Edit(edtA, edtB, edtC). Мне нужно написать универсальную функцию для них, которая бы проверяла введенный текст.
Как можно обратиться к свойству Text активного компонента Edit через форму, на которой он расположен (чтобы не писать edtA.Text, edtB.Text, edtC.Text)? Возможно ли такое?


 
stone ©   (2005-12-01 16:14) [1]

TEdit(FindComponent(Твой эдит)).Text


 
begin...end ©   (2005-12-01 16:16) [2]

ActiveControl


 
Pil ©   (2005-12-01 16:32) [3]


> TEdit(FindComponent(Твой эдит)).Text


Что значит "мой эдит"? Вы имеете ввиду:
TEdit(FindComponent(Form1.ActiveControl.Name)).Text ?

FindComponent требует параметр типа строка, а через ActiveControl.Name типа TComponentName.


 
Vlad ©   (2005-12-01 16:41) [4]

ты уверен что тебе нужен именно активный контрол?
Или тебе нужно в цикле перебрать все Editы на форме и проверить их текст?


 
Pil ©   (2005-12-01 16:47) [5]


> ты уверен что тебе нужен именно активный контрол?
> Или тебе нужно в цикле перебрать все Editы на форме и проверить
> их текст?


нужен именно активный контрол, т.к. проверка осуществляется перед выходом из Эдита. Цикл тут не подходит.


 
Vlad ©   (2005-12-01 17:03) [6]

У TEdit есть событие OnExit
Там единственный параметр - Sender. Это тот объект, который вызвал обработчик, т.е. твой Edit. Если одну и ту же процедуру повесить на OnExit всех Edit-ов, получишь требуемый результат


 
Плохиш ©   (2005-12-01 17:06) [7]


> Pil ©   (01.12.05 16:47) [5]
> нужен именно активный контрол, т.к. проверка осуществляется
> перед выходом из Эдита.

TEdit.OnExit + F1


 
Pil ©   (2005-12-01 17:09) [8]


> У TEdit есть событие OnExit
> Там единственный параметр - Sender. Это тот объект, который
> вызвал обработчик, т.е. твой Edit. Если одну и ту же процедуру
> повесить на OnExit всех Edit-ов, получишь требуемый результат


Хорошо, пусть будет так:
procedure TForm1.edtFromExit(Sender: TObject);
Var S: string;
begin
   S := Sender.Text;//здесь ошибка Undeclared identifier: "Text"
end;


 
Ega23 ©   (2005-12-01 17:13) [9]


> procedure TForm1.edtFromExit(Sender: TObject);
> Var S: string;
> begin
>    S := Sender.Text;//здесь ошибка Undeclared identifier:
>  "Text"
> end;
>


if (Sender is TEdit) then s:=TEdit(Sender).Text;


 
Pil ©   (2005-12-01 17:14) [10]

Господа, внимание! Вопрос состоит не в том, когда вызывается обработчик, а как обратиться к свойству Text активного Edit!

procedure TForm1.edtFromExit(Sender: TObject);
Var S: string;
begin
   S := Sender.Text;//Undeclared identifier: "Text"
end;


 
Pil ©   (2005-12-01 17:15) [11]

Ega23, спасибо большое, теперь все прояснилось! ))



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

Форум: "Начинающим";
Текущий архив: 2005.12.18;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.015 c
3-1130506180
russko
2005-10-28 17:29
2005.12.18
Вставка значения даты в таблицу


4-1128525702
Максим
2005-10-05 19:21
2005.12.18
Информация о системе


14-1132824008
Сержо
2005-11-24 12:20
2005.12.18
JavaScript: Перенос опций из одного select а в другой


2-1133201028
Fer
2005-11-28 21:03
2005.12.18
помогите написать запрос на SQL - не ясна одна буква


2-1133351243
linox
2005-11-30 14:47
2005.12.18
Срочно!!!! Нужно данные с Excell перекинуть на шаблоны в Word





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский