I #의 m이 클래스는 두 번째 클래스의 속성으로 두 클래스 간의 공유액세스 다른 클래스의 클래스/컴포넌트 절차/
TMyClass = class
private
public
procedure onconnect (...);
end;
TFormA = class(TForm)
MYCLASS : TMyClass;
procedure StartFormB(...)
end;
TFormA.procedure StartFormB(...)
begin
bForm.MYCLASS := MyClass;
bForm.Show;
end;
TFormB = class(TForm)
private
....
FMYCLASS : TMyClass;
public
......
.....
property MYCLASS : TMyClass read FMYCLASS write FMYCLASS;
end;
TMyClass는 Indy TCP 서버와 같은 것으로, 속성을 통해 공유 클래스 인스턴스에 대한 액세스 권한을 갖는 bForm 내에서 클래스 이벤트 프로 시저 onconnect (..) 또는 onexecute (..) 함수를 호출하는 방법을 가정합니다.
이 쉽게
이 절차는 클래스 이벤트 프로 시저 하지만 bForm.FMyClass.onconnect (...) 이가 나는에 ALINK을 구축 할 수 없습니다 작동하지 않습니다에 연결되어
aForm : TMyForm;
aForm.onconnect(...);
클래스 이벤트 프로 시저 ...
'MyClass.XXX'는 'XXX' 메소드를 호출합니다. 너무 분명해서 대답이 될 수 없습니다. 그래서 당신이 질문을 개선해야한다고 생각합니다. –
또한 'MyClass' 객체를 호출하지 마십시오. 클래스와 객체의 차이점을 알아야합니다. 객체는 클래스의 인스턴스입니다. 코드에서 'MYCLASS'와'FMYCLASS'는 클래스가 아닙니다. 인스턴스 또는 객체입니다. 적절하게 이름을 지정하십시오. –
'OnConnect()'와 동일합니다. 'On' 접두사는 이벤트 속성에 대해 _reserved_이며, 이름을'Connect()'로 바꿉니다. – NGLN