Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

работа с компонентами


mike ilin ©   (2006-10-23 11:24:00) 

Подскажите, как программно работать с активным компонентом.
Например:
На форме имею несколько компонентов TEdit, по нажатию кнопки мне надо вывести в Label1 текст из активного TEdit.
Мой вариант:
procedure TForm1.Button1Click(Sender: TObject);
var
 ed : array of TEdit;
begin
 if ActiveControl <> nil then
   if ActiveControl in ed then Label1.Caption := ActiveControl.Text; **
end;
компилятор не пропускает: ** Operator not applicable to this operand type.
Заранее благодарен. Андрей.


Elen   (2006-10-23 11:50:00) [1]


> Чую не поможе

Правильно чуеш


> mike ilin

Как вариант :
Для каждого Едита прописаваеш одну процедуру OnEnter  и пробуеш так :


procedure TForm1.Button1Click(Sender: TObject);
begin
caption:=TEdit(Components[Button1.Tag]).Text;
end;

procedure TForm1.Edit1Enter(Sender: TObject);
begin
Button1.Tag:=tedit(sender).ComponentIndex;
end;


Dmitrij_K   (2006-10-23 11:27:00) [2]

Чую не поможет, как только нажмешь на кнопку, ActiveControl сменится и условие не прокатит


Dmitrij_K   (2006-10-23 11:26:00) [3]

if (ActiveControl<>nil) and (ActiveControl isTEdit) then
 Label1.Caption := TEdit(ActiveControl).Text


Наверх

Титульная страница Поиск, карта сайта Написать письмо