CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Delphi >  VCL组件开发及应用

如何知道对象的类型?

楼主davidsoong(David)2006-05-01 20:55:53 在 Delphi / VCL组件开发及应用 提问

如何知道对象的类型? 问题点数:10、回复次数:8Top

1 楼liangqingzhi(老之)回复于 2006-05-01 21:17:06 得分 0

创建对象后用它的ClassName就行了Top

2 楼davidsoong(David)回复于 2006-05-01 22:00:42 得分 0

 
  问题是这样的:  
  我的问题是这样的:  
      定义了很多个变量,和很多个对象;  
      怎样知道是对象还是变量?Top

3 楼yq3woaini(哈哈镜 选择好心情)回复于 2006-05-01 22:01:22 得分 0

ShowMessage(Button1.ClassName);  
    ShowMessage(Button1.ClassType.ClassName);Top

4 楼davidsoong(David)回复于 2006-05-01 22:02:48 得分 0

谢谢您们了!!!!!!!!!!!!!!!!  
   
  -------------------------------------------  
   
  问题是这样的:  
  我的问题是这样的:  
      定义了很多个变量,和很多个对象;  
      怎样知道是对象还是变量?Top

5 楼Rubi(浪迹Csdn各个板块!MS-Borland-IBM-SUN-水区-在去哪里呢?)回复于 2006-05-01 22:55:04 得分 0

如果是对象,比如Cat,如果是对象,那么就有cat.create,如果是变量就没有:)Top

6 楼liangqingzhi(老之)回复于 2006-05-02 14:57:13 得分 0

对象应该可以这样判断:  
  if   Obj   is   TObject   then   ...Top

7 楼hsmserver(撒哈拉之雨的悲伤)回复于 2006-05-02 15:04:04 得分 0

这样试试  
  var  
  edt:TEdit;  
  begin  
  if   edt   is   TObject   then  
  begin  
  ShowMessage(edt.ClassName);  
  end;  
   
  效果就不一样了  
  如果写到button就show   'Tbutton'  
  如果写到form.create   显示:'TForm'  
   
  Top

8 楼hsmserver(撒哈拉之雨的悲伤)回复于 2006-05-02 15:06:41 得分 0

再这样写呢  
  var  
  edt:TEdit;  
  begin  
  edt:=TEdit.Create(nil);  
  if   edt   is   TObject   then  
  begin  
  ShowMessage(edt.ClassName);  
  end;  
   
  正解:'TEdit'  
   
  所以有时候图省事是不可能的Top

相关问题

关键词

得分解答快速导航

  • 帖主:davidsoong

相关链接

  • Delphi类图书
  • Delphi类源码下载
  • Delphi控件下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo