Показать сообщение отдельно
  #4  
Старый 13.03.2010, 12:50
m.medvedb m.medvedb вне форума
Прохожий
 
Регистрация: 24.01.2010
Сообщения: 6
Репутация: 10
По умолчанию

Цитата:
Сообщение от s0Creator
Я так понял кавычки ( " ) просто обозначают место, куда вставляется процедура.

Теперь по порядку.
Есть процедуры, а есть методы ( описываются в классах ).
BitBtn2.onclick можно присвоить метод и то не каждый.
Смотрим объявление:
Код:
  TControl = class(TComponent)
//...
    property OnClick: TNotifyEvent read FOnClick write FOnClick stored IsOnClickStored;
//...

  TNotifyEvent = procedure(Sender: TObject) of object;

Используем ( без создания экземпляра объекта ) :
Код:
unit Unit2;

interface

type
  TMyToolsClass = class
    class procedure MyBtnClickImplementor(Sender: TObject);
  end;

implementation

{ TMyTolsClass }

class procedure TMyToolsClass.MyBtnClickImplementor(Sender: TObject);
begin
  // чтото делаем
end;

end.
Код:
unit Unit1;

interface

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

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

var
  Form1: TForm1;

implementation

uses Unit2;

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
  Button1.OnClick := TMyToolsClass.MyBtnClickImplementor;
end;

end.

Спасибо Огромное за разъяснение
Все получилось!
Ответить с цитированием