帮忙看一下property的问题. ( 积分: 50 )

  • 主题发起人 主题发起人 jjaacc
  • 开始时间 开始时间
J

jjaacc

Unregistered / Unconfirmed
GUEST, unregistred user!
代码如下:
class A = class(TObject)
private
FUserName: string;
property UserName: string Read GetUserName Write SetUserName;
end;
procedure TA.SetUserName(AUserName: string);
begin
FUserName := AUserName;
end;

function TA.GetUserName(): string;
begin
Result := FUserName;
end;

为什么这里我无法写入USERNAME同时也无法得到USERNAME呢?谢谢
 
代码如下:
class A = class(TObject)
private
FUserName: string;
property UserName: string Read GetUserName Write SetUserName;
end;
procedure TA.SetUserName(AUserName: string);
begin
FUserName := AUserName;
end;

function TA.GetUserName(): string;
begin
Result := FUserName;
end;

为什么这里我无法写入USERNAME同时也无法得到USERNAME呢?谢谢
 
private下的属性是不能访问的。应该放在public或published中,
 
我和楼上的看法一样
 
同意 冷叶风
 
为什么我改到了PUBLISHED中还是老样子呢
 
private
FUserName: string;

function GetUserName: string;
procedure SetUserName(const Value: string);
{ Private declarations }
public
{ Public declarations }
property UserName: string Read GetUserName Write SetUserName;
end;



{ Ta }

function Ta.GetUserName: string;
begin
result:=FUserName;
end;

procedure Ta.SetUserName(const Value: string);
begin
FUserName:=value;
end;
记的给分
 
楼上的,谢谢,还是没有呢?
 
你是报错了还是怎么的?
如果是对象(A)能创建的话.哪肯定是你的作用域问题.
如果对象(A)不能创建的话,肯定不是你的属性问题!
 
没报错,就是取到的值是空值,是空白的,我用SHOWMESSAGE看了,是空的.
 
哪肯定是没有赋值嘛!
 
多人接受答案了。
 
后退
顶部