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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 23.02.2010, 19:01   #1
Alex1991
Форумчанин
 
Аватар для Alex1991
 
Регистрация: 18.10.2008
Сообщений: 166
Вопрос Delphi Как узнать индекс компонента

Как узнать индекс компонента по которому кликнули мышкой ??
Alex1991 вне форума Ответить с цитированием
Старый 23.02.2010, 19:37   #2
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,709
По умолчанию

Индекс где?
p51x вне форума Ответить с цитированием
Старый 23.02.2010, 19:42   #3
Alex1991
Форумчанин
 
Аватар для Alex1991
 
Регистрация: 18.10.2008
Сообщений: 166
По умолчанию

ну мне нужно индекс компонента(TLabel) по которому мы кликнули мышкой
Alex1991 вне форума Ответить с цитированием
Старый 23.02.2010, 20:06   #4
raxp
Старожил
 
Регистрация: 29.09.2009
Сообщений: 9,713
По умолчанию

объединяете все лабели под одним кликом и (sender as tlabel).tag ...name ...caption ...и т.п.
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation
raxp вне форума Ответить с цитированием
Старый 23.02.2010, 20:17   #5
Alex1991
Форумчанин
 
Аватар для Alex1991
 
Регистрация: 18.10.2008
Сообщений: 166
По умолчанию

Цитата:
Сообщение от raxp Посмотреть сообщение
объединяете все лабели под одним кликом и (sender as tlabel).tag ...name ...caption ...и т.п.
ну вообщем у меня есть форма на ней кнопка, при нажатии кнопки создается и размещается на форме переменная MyLabel. Также есть на форме информационная метка которая выводит имя(Caption) метки по которой пользователь кликнул.

Вообщем такое мне нужно
Alex1991 вне форума Ответить с цитированием
Старый 23.02.2010, 20:49   #6
raxp
Старожил
 
Регистрация: 29.09.2009
Сообщений: 9,713
По умолчанию

вот видите, что нужно полностью формулировать задачу и условия... итак, имеем динамически создаваемый компонент mylabel: tlabel, отсюда - при создании назначьте на него событие onclick и внутри него ваша информационная метка, вот и все.
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation
raxp вне форума Ответить с цитированием
Старый 23.02.2010, 21:00   #7
Alex1991
Форумчанин
 
Аватар для Alex1991
 
Регистрация: 18.10.2008
Сообщений: 166
По умолчанию

Цитата:
Сообщение от raxp Посмотреть сообщение
вот видите, что нужно полностью формулировать задачу и условия... итак, имеем динамически создаваемый компонент mylabel: tlabel, отсюда - при создании назначьте на него событие onclick и внутри него ваша информационная метка, вот и все.
Код:
unit Unit1;

interface

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

type
  TForm1 = class(TForm)
    Button1: TButton;
    XPManifest1: TXPManifest;
    Label2: TLabel; 
    Label1: TLabel;                                //информационная метка
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  procedure ClickLabel(Sender: TObject);
  end;

var
  Form1: TForm1;
  MyLabel: TLabel;
  CountOfLabel: integer;
  Tp: integer= 56;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
CountOfLabel:=CountOfLabel+1;
MyLabel:=TLabel.Create(self);
MyLabel.Parent:=Form1;
MyLabel.Caption:=IntToStr(CountOfLabel);
MyLabel.Font.Size:=10;
MyLabel.Font.Name:='Arial';
MyLabel.Font.Style:=[fsBold, fsItalic];
MyLabel.Top:=MyLabel.Top+Tp;
MyLabel.Left:=300;
MyLabel.OnClick:=ClickLabel;
Tp:=Tp+13;
end;

procedure TForm1.ClickLabel(Sender: TObject) //runtime событие клика
begin
Label1.Caption:=MyLabel.Caption; // но если так то информационной метке присваевается Caption от последней созданной метке ((
end;

end.
Подскажите как сделать правильно
Может быть MyLabel сделать массивом ??
Alex1991 вне форума Ответить с цитированием
Старый 23.02.2010, 21:48   #8
raxp
Старожил
 
Регистрация: 29.09.2009
Сообщений: 9,713
По умолчанию

всего-лишь замените на Label1.Caption:= (sender as tlabel).caption
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation
raxp вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как узнать лицензирована ли версия Delphi? Vit@L Свободное общение 34 20.02.2010 05:24
как побороть уникальный индекс? zander Microsoft Office Access 4 11.01.2010 00:07
Контрол TAdvOfficeTabSet: как узнать индекс активной закладки? Ronaldo Общие вопросы Delphi 0 15.12.2009 21:58
Узнать индекс компонента в событие larin1974 Общие вопросы Delphi 5 13.12.2009 13:59
Как узнать HANDLE компонента который находится под курсором мыши SeRhy Общие вопросы Delphi 7 04.02.2009 20:39