Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 15.01.2014, 20:19   #1
Alexandr17
Форумчанин
 
Регистрация: 10.12.2013
Сообщений: 227
По умолчанию Как определить на каком Edit был курсор

В PoupMenu2 есть кнопка и это меню используется для нескольких Edit
После нажатия кнопки нужно определить имя Edit'а где эта кнопка была использована. И вставить туда определенную строку. Вопрос как это сделать. Самый легкий способ.
Alexandr17 вне форума Ответить с цитированием
Старый 15.01.2014, 20:22   #2
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,426
По умолчанию

В OnClick пункта меню найти элемент с фокусом, If Edit1.Focused then как-то так...
Человек_Борща вне форума Ответить с цитированием
Старый 15.01.2014, 20:43   #3
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Цитата:
найти элемент с фокусом
А не надо ни чего искать, уже все найдено
Код:
procedure TForm1.PItem1Click(Sender: TObject);
begin
  if ActiveControl<>nil then Label1.Caption:=ActiveControl.Name;
end;
или так
Код:
procedure TForm1.PItem1Click(Sender: TObject);
begin
  if ActiveControl is TEdit then TEdit(ActiveControl).Text:=ActiveControl.Name;
end;
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию

Последний раз редактировалось Аватар; 15.01.2014 в 20:51.
Аватар вне форума Ответить с цитированием
Старый 15.01.2014, 20:49   #4
милт
Форумчанин
 
Регистрация: 19.03.2012
Сообщений: 108
По умолчанию

У каждого эдита есть событие OnMouseMove(когда мышкой над ним водишь). когда происходит это событие присваивай переменной имя этого эдита.
милт вне форума Ответить с цитированием
Старый 15.01.2014, 21:03   #5
northener
ПШП
Участник клуба
 
Регистрация: 15.07.2013
Сообщений: 1,872
По умолчанию

"Навороченный" вариант
Код:
procedure TForm1.MenuItem1Click(Sender: TObject);
begin
  TEdit(TPopupMenu(TMenuItem(Sender).GetParentMenu).PopupComponent).Text:='Bla-Bla';
end;
northener вне форума Ответить с цитированием
Старый 15.01.2014, 21:19   #6
Alexandr17
Форумчанин
 
Регистрация: 10.12.2013
Сообщений: 227
По умолчанию

Цитата:
Сообщение от Аватар Посмотреть сообщение
А не надо ни чего искать, уже все найдено
Код:
procedure TForm1.PItem1Click(Sender: TObject);
begin
  if ActiveControl<>nil then Label1.Caption:=ActiveControl.Name;
end;
или так
Код:
procedure TForm1.PItem1Click(Sender: TObject);
begin
  if ActiveControl is TEdit then TEdit(ActiveControl).Text:=ActiveControl.Name;
end;
Не подходит нужно имено с TEdit работать
Alexandr17 вне форума Ответить с цитированием
Старый 15.01.2014, 21:42   #7
doktor255
Заблокирован
 
Регистрация: 31.03.2011
Сообщений: 976
По умолчанию

Код:
procedure TForm1.N1Click(Sender: TObject);
var Edit: TEdit; // самый что ни на есть TEdit;
begin
if (ActiveControl <> nil) and (ActiveControl.ClassName = 'TEdit') then
  begin
    Edit := (ActiveControl as TEdit); // Получили ссылку на TEdit
    Edit.Text := '123';
    Edit.Tag := 0;
    Edit.Font.Color := ClRed; // работаем с TEdit
  end;
end;

Последний раз редактировалось doktor255; 15.01.2014 в 22:10.
doktor255 вне форума Ответить с цитированием
Старый 16.01.2014, 14:18   #8
Alexandr17
Форумчанин
 
Регистрация: 10.12.2013
Сообщений: 227
По умолчанию

Спасибо вопрос решен.
Alexandr17 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как определить на каком логическом диске установлена ОС Windows? DeadMan1000 Общие вопросы C/C++ 8 02.06.2013 13:52
Определить курсор как картинку... T.e.m.p.l.a.R Общие вопросы Delphi 2 15.06.2011 20:00
Как определить был ли выделен текст в richTextBox1 feramount Общие вопросы C/C++ 3 26.11.2010 16:57
Как определить где курсор Electron Общие вопросы C/C++ 4 27.07.2010 21:32
Как определить был ли ввод с клавиатуры или нет? invertor Общие вопросы C/C++ 4 02.07.2010 11:51