急急急,求一个简单函数! ( 积分: 1 )

  • 主题发起人 主题发起人 zpselect
  • 开始时间 开始时间
Z

zpselect

Unregistered / Unconfirmed
GUEST, unregistred user!
我求一函数,根据输入参数返回一个变量
function ReturnValue(sender: TWinControl): Variant;
begin
if sender.Controls[0] is TEdit then
begin
if TEdit(Sender.Controls[0]).Text = '' then
Result :=null
else Result := TEdit(Sender.Controls[0]).Text;
end else if sender.controls[0] is CheckBox then
begin
if TCheckBox(sender.Controls[0].checked=true then
Result:='1' else Result:='0';
end;
调用这一些方法:
procedure TMainfrm.Buttton1Click(Sender: TObject);
begin
Edit2.text:=ReturnValue(Edit1);
end;
调用时报地址错误!望高手改之!
 
sender.Controls是空列表呢,你考虑过吗
 
哈哈,我已经实现了
function ReturnValue(sender: TWinControl): Variant;
var
temp: TComponent;
begin
temp := sender;
if temp <> nil then
begin
if temp is TEdit then
begin
if TEdit(temp).Text = '' then
Result := Null
else Result := TEdit(temp).Text;
end else if temp is TCheckBox then
begin
if TCheckBox(temp).Checked = true then
Result := '1' else Result := '0';
end;
end;
end;
 

Similar threads

S
回复
0
查看
1K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
900
SUNSTONE的Delphi笔记
S
S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
后退
顶部