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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 01.04.2009, 20:16   #1
Ky3Heu,
Пользователь
 
Регистрация: 01.04.2009
Сообщений: 94
Восклицание Как узнать имя выделенного компонента. Тип компонента неизвестен. И вообще ничего о компоненте неизвестно

Ребятки помогите плиз.. Как мне занести имя компонента, на котором кликнул пользователь в переменную?? Компонентов несколько десятков на форме.. одинаковые и разные...
По ракетам и хоккею - Россияне всех сильней!

Последний раз редактировалось Ky3Heu,; 01.04.2009 в 22:55.
Ky3Heu, вне форума Ответить с цитированием
Старый 01.04.2009, 20:23   #2
INVAZIA
Пользователь
 
Регистрация: 31.03.2009
Сообщений: 10
По умолчанию

Так чтоли ?
Код:
procedure TForm1.Button1Click(Sender: TObject);
var
     s:string;
begin
     s:=Button1.Name;
     Form1.Caption:=s;
end;
INVAZIA вне форума Ответить с цитированием
Старый 01.04.2009, 20:33   #3
Ky3Heu,
Пользователь
 
Регистрация: 01.04.2009
Сообщений: 94
По умолчанию Компонент

Спасибо за ответ, INVAZA. Но тип компонента, по которому кликнет пользователь мне не известен. Нужен обработчик событий, который позволит мне узнать, что за компонент и вычислить его имя... В голове вроде, что-то вертиться, а зацепиться не могу....
По ракетам и хоккею - Россияне всех сильней!
Ky3Heu, вне форума Ответить с цитированием
Старый 01.04.2009, 20:37   #4
VVM
Форумчанин
 
Аватар для VVM
 
Регистрация: 06.06.2007
Сообщений: 282
По умолчанию

В примере на форме Edit, Button & Label.
Всем им назначаем один обработчик события - Button1Click.

Код:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ExtCtrls;

type
  TForm1 = class(TForm)
    Button1: TButton;
    Label1: TLabel;
    Edit1: TEdit;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
  if Sender.ClassName = 'TButton' then
    Caption := (Sender as TButton).Name;
  if Sender.ClassName = 'TEdit' then
    Caption := (Sender as TEdit).Name;
  if Sender.ClassName = 'TLabel' then
    Caption := (Sender as TLabel).Name;
end;

end.
Не важно, как часто вы падаете. Важно, как часто вы поднимаетесь. Винс Ломбарди.
VVM вне форума Ответить с цитированием
Старый 01.04.2009, 20:41   #5
Ky3Heu,
Пользователь
 
Регистрация: 01.04.2009
Сообщений: 94
По умолчанию

Спасибо, VVM!!! Попробую этот код переработать под свою задачу!!!!
По ракетам и хоккею - Россияне всех сильней!
Ky3Heu, вне форума Ответить с цитированием
Старый 02.04.2009, 00:58   #6
Jeni
Форумчанин
 
Регистрация: 31.05.2007
Сообщений: 486
По умолчанию

Тогда уж проще в едином обработчике написать Caption := TComponent(Sender).Name;
Jeni вне форума Ответить с цитированием
Старый 02.04.2009, 08:11   #7
Лукманов Александр
работа не волк....
Форумчанин
 
Аватар для Лукманов Александр
 
Регистрация: 09.06.2008
Сообщений: 337
По умолчанию

Цитата:
Сообщение от Jeni Посмотреть сообщение
Тогда уж проще в едином обработчике написать Caption := TComponent(Sender).Name;
Вроде для всех типов компонентов нет обработчика OnClick
Цель, для которой требуются неправые средства, не есть неправая цель.
Лукманов Александр вне форума Ответить с цитированием
Старый 02.04.2009, 11:59   #8
Ky3Heu,
Пользователь
 
Регистрация: 01.04.2009
Сообщений: 94
По умолчанию

Для тех компонентов, которые используются OnClick есть. Спасибо Jeni!!
По ракетам и хоккею - Россияне всех сильней!

Последний раз редактировалось Ky3Heu,; 02.04.2009 в 12:02.
Ky3Heu, вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Что за компонент MAcK Компоненты Delphi 3 10.11.2008 12:18
Нужен компонент ShomiX Компоненты Delphi 8 18.01.2008 05:26
Компонент Terran Компоненты Delphi 2 16.12.2007 17:42
Компонент HTTPGet Stanislav Компоненты Delphi 0 19.11.2007 16:55