チャットフォームにパブリックメソッドを追加します。
with TChatForm.Create(Application) do
begin
PassUserName(FUsername);
Show;
end;
procedure TChatForm.PassUserName(const aUsername: string);
begin
Caption := 'You can now chat: '+ aUsername;
end;
これにより、新しいパブリックメソッドを追加するだけで、既存のパブリックメソッドを変更せずに、チャットフォームに必要なものを渡すことができます。
懸念事項に対処するために「with」またはFUsernameを使用しない例:
frmChat := TChatForm.Create(Application);
frmChat.Nickname := aUsername;
frmChat.Show;
TChatForm = class(TForm)
private
FUsername : string;
procedure SetNickName(const Value: string);
function GetNickName: string;
public
property NickName: string read GetNickName write SetNickName;
end;
procedure TChatForm.SetNickName(const Value: string);
begin
FUsername := Value;
end;
function TChatForm.GetNickName: string;
begin
Result := FUsername;
end;