Delphi World - это проект, являющийся сборником статей и малодокументированных возможностей  по программированию в среде Delphi. Здесь вы найдёте работы по следующим категориям: delphi, delfi, borland, bds, дельфи, делфи, дэльфи, дэлфи, programming, example, программирование, исходные коды, code, исходники, source, sources, сорцы, сорсы, soft, programs, программы, and, how, delphiworld, базы данных, графика, игры, интернет, сети, компоненты, классы, мультимедиа, ос, железо, программа, интерфейс, рабочий стол, синтаксис, технологии, файловая система...
Работа с именем компонента


Внимание! По интернету со страшной скоростью распространяется особо опасный Албанский вирус. Вам должно прийти следующее письмо: ВЫ ТОЛЬКО ЧТО ПОЛУЧИЛИ АЛБАНСКИЙ ВИРУС! Так как мы в Албании не очень технически подкованы, поэтому вирус выполняется вручную. Пожалуйста сотрите самостоятельно все файлы с жесткого диска и разошлите это письмо всем, кого вы знаете. Спасибо за сотрудничество!


unit NameF;

interface

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

type
  TForm1 = class(TForm)
    ListBox1: TListBox;
    ButtonUpdate: TButton;
    Label1: TLabel;
    ButtonGetName: TButton;
    Label2: TLabel;
    EditName: TEdit;
    ButtonChange: TButton;
    ButtonWeird: TButton;
    EditNewName: TEdit;
    Label3: TLabel;
    ButtonGetField: TButton;
    procedure ButtonUpdateClick(Sender: TObject);
    procedure ButtonChangeClick(Sender: TObject);
    procedure ButtonGetNameClick(Sender: TObject);
    procedure ButtonGetFieldClick(Sender: TObject);
    procedure ButtonWeirdClick(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.ButtonUpdateClick(Sender: TObject);
var
  I: Integer;
begin
  ListBox1.Items.Clear;
  for I := 0 to ComponentCount - 1 do
    ListBox1.Items.Add (Components [I].Name);
end;

procedure TForm1.ButtonChangeClick(Sender: TObject);
begin
  if Assigned (ButtonChange) then
    ButtonChange.Name := EditNewName.Text
  else
    Beep;
end;

procedure TForm1.ButtonGetNameClick(Sender: TObject);
begin
  if FindComponent (EditName.Text) <> nil then
    ShowMessage (EditName.Text + ' component exists')
  else
    ShowMessage (EditName.Text +
      ' component doesn''t exist');
end;

procedure TForm1.ButtonGetFieldClick(Sender: TObject);
var
  Field: ^TComponent;
begin
  Field := FieldAddress (EditName.Text);
  if Field <> nil then
  begin
    if Field^ = nil then
      ShowMessage (EditName.Text +
        ' field found, but not connected with a component')
    else
      ShowMessage (EditName.Text + ' field found');
  end;
end;

procedure TForm1.ButtonWeirdClick(Sender: TObject);
var
  Temp: TComponent;
begin
  // exchange the names
  Temp := ButtonUpdate;
  ButtonUpdate.Name := 'Temp999';
  ButtonWeird.Name := 'ButtonUpdate';
  Temp.Name := 'ButtonWeird';
  // which button is disabled/moved?
  ButtonUpdate.Enabled := False;
  ButtonWeird.Left := ButtonWeird.Left + 5;
end;

end.

Загрузить весь проект

Проект Delphi World © Выпуск 2002 - 2004
Автор проекта: ___Nikolay