在一个过程中参数是窗体对象,我要得到窗体对象中某个控件的一个属性返回值怎样得到
如:
Function GetBitMap(vfrm:TForm):TBitMap;
var BitMap:TBitmap;
begin
BitMap := vfrm.Vcl.BitMap;end;
Vfrm是作为参数在传递
如:
Function GetBitMap(vfrm:TForm):TBitMap;
var BitMap:TBitmap;
begin
BitMap := vfrm.Vcl.BitMap;end;
Vfrm是作为参数在传递
解决方案 »
- 如何控制网口佳博打印机
- 难度大了点分少了点,呵呵!大侠请进!
- 为什么语句TBlobField(AdoTable.FieldByName('内容')).SaveToFile('c:\temp.doc');得到的文件temp.doc是乱码?
- 谁有fastreport的资料呀,什么学习笔记呀,有关的网站呀,急用!(100分相赠)
- 关于取其它程序控件文本的问题
- 报表预览时死机...
- dataset的filte好象不能用中文?
- 求救!
- ListBox1.ItemIndex:=1这一句为什么一点效果都没有?
- 在COM+对象中调用WebService时,报“灾难性故障”,Y?
- 求助 Indy TcpServer 发送数据问题
- TEmbeddedWB 中使用 execScript 有时会包缺少对象的错误
或者直接 Result := vfrm.Vcl.BitMap;
不知道是那个窗体,
有可能是窗体一
有可能是窗体二
Function GetBitMap(vfrm:TForm):TBitMap;
var BitMap:TBitmap;
begin
BitMap := vfrm.Vcl.BitMap; end;调用时可能是GetBitMap(窗体一)
而这个函数是将窗体名作为参数,来返回这个窗体上控件的属性值
如果GetBitMap(窗体一)就返回窗体一的这个值
Result := 窗体一.vcl.BitMap
如果GetBitMap(窗体二)就返回窗体2的这个值
Result := 窗体2.vcl.BitMap
窗体3、4、5。。
窗体是非固定的
Function GetBitMap():TBitMap
可以用vfrm.Components属性来获取它包含的某个组件,再获取这个组件的属性。
或者用vfrm.FindComponent方法也可以。
Result := (vfrm as TForm1).Vcl.BitMap
else if (vfrm is TForm2) then
Result := (vfrm as TForm2).Vcl.BitMap
...是这个意思吗?或者用5楼的方法,比我这个好。
比如说,想得到Button1这个控件的Caption
Result := (vfrm.FindComponent('Button1') as TButton).Caption;