FMX控件的Tag属性是什么类型的?FMX的TreeView和ListView控件有没有改进?

ooolinux 2018-03-08 09:15:00
VCL控件的Tag属性是int类型的,有时候感觉还不够方便,不如.NET。
VCL的TreeView控件,添加根节点和添加子节点的方法是不同的,而.NET的TreeView控件所有节点都是一致的,感觉不错。
ListView控件,用的不多,感觉也是.NET的更方便。
不知道FMX的TreeView控件和ListView控件有没有比VCL的更加方便了?
...全文
1371 33 打赏 收藏 转发到动态 举报
写回复
用AI写文章
33 条回复
切换为时间正序
请发表友善的回复…
发表回复
看那山瞧那水 2018-03-16
  • 打赏
  • 举报
回复
fmx的listview好强大,item的内容你可以任意定制
看那山瞧那水 2018-03-16
  • 打赏
  • 举报
回复
好像FMX的TAG属性提供了3个类型,int,string,double,int是publish,string和double是public
ooolinux 2018-03-16
  • 打赏
  • 举报
回复
@看那山瞧那水 @早打大打打核战争 属性可以重载吗?
  • 打赏
  • 举报
回复
引用 22 楼 jankercsdn 的回复:
好像FMX的TAG属性提供了3个类型,int,string,double,int是publish,string和double是public
应该没有,不管VCL组件还是FMX组件,Tag属性都是从TComponent.Tag继承下来的,在老版本中是integer,新版本中是NativeInt。
ooolinux 2018-03-16
  • 打赏
  • 举报
回复
@早打大打打核战争 @看那山瞧那水 老概表述比较严谨,+1 山水说到意思了,+1
ooolinux 2018-03-16
  • 打赏
  • 举报
回复
@看那山瞧那水 那不错亚~ item的内容可以任意定制怎么讲?
  • 打赏
  • 举报
回复
引用 31 楼 jankercsdn 的回复:
[quote=引用 30 楼 DelphiGuy 的回复:] [quote=引用 28 楼 jankercsdn 的回复:] [quote=引用 25 楼 DelphiGuy 的回复:] [quote=引用 22 楼 jankercsdn 的回复:] 好像FMX的TAG属性提供了3个类型,int,string,double,int是publish,string和double是public
应该没有,不管VCL组件还是FMX组件,Tag属性都是从TComponent.Tag继承下来的,在老版本中是integer,新版本中是NativeInt。 [/quote] 哈哈,我还少说一个,有4种类型 tag tagstring tagfloat tagobject[/quote] 说的是Tag属性,Tag是integer/NativeInt,你理解不了? [/quote] 是啊,理解不了啊 tag可以用,tagstring,tagfloat,tagobject不能用? VCL是没有 tagstring,tagfloat,tagobject这几个属性的 tagstring,tagfloat,tagobject的用处和tag 是一样的, 呵呵[/quote] 能用,那几个是从TFmxObject开始后增加的属性,不是Tag,你在#22说的是“好像FMX的TAG属性提供了3个类型,int,string,double,int是publish,string和double是public”,不管是TAG属性提供了3个类型还是4个类型都是错的,Tag只有一个类型,其他的不叫Tag。
看那山瞧那水 2018-03-16
  • 打赏
  • 举报
回复
引用 30 楼 DelphiGuy 的回复:
[quote=引用 28 楼 jankercsdn 的回复:] [quote=引用 25 楼 DelphiGuy 的回复:] [quote=引用 22 楼 jankercsdn 的回复:] 好像FMX的TAG属性提供了3个类型,int,string,double,int是publish,string和double是public
应该没有,不管VCL组件还是FMX组件,Tag属性都是从TComponent.Tag继承下来的,在老版本中是integer,新版本中是NativeInt。 [/quote] 哈哈,我还少说一个,有4种类型 tag tagstring tagfloat tagobject[/quote] 说的是Tag属性,Tag是integer/NativeInt,你理解不了? [/quote] 是啊,理解不了啊 tag可以用,tagstring,tagfloat,tagobject不能用? VCL是没有 tagstring,tagfloat,tagobject这几个属性的 tagstring,tagfloat,tagobject的用处和tag 是一样的, 呵呵
  • 打赏
  • 举报
回复
引用 28 楼 jankercsdn 的回复:
[quote=引用 25 楼 DelphiGuy 的回复:] [quote=引用 22 楼 jankercsdn 的回复:] 好像FMX的TAG属性提供了3个类型,int,string,double,int是publish,string和double是public
应该没有,不管VCL组件还是FMX组件,Tag属性都是从TComponent.Tag继承下来的,在老版本中是integer,新版本中是NativeInt。 [/quote] 哈哈,我还少说一个,有4种类型 tag tagstring tagfloat tagobject[/quote] 说的是Tag属性,Tag是integer/NativeInt,你理解不了?
看那山瞧那水 2018-03-16
  • 打赏
  • 举报
回复
从tfmxobject继承的,所以FMX控件都能用
看那山瞧那水 2018-03-16
  • 打赏
  • 举报
回复
引用 25 楼 DelphiGuy 的回复:
[quote=引用 22 楼 jankercsdn 的回复:] 好像FMX的TAG属性提供了3个类型,int,string,double,int是publish,string和double是public
应该没有,不管VCL组件还是FMX组件,Tag属性都是从TComponent.Tag继承下来的,在老版本中是integer,新版本中是NativeInt。 [/quote] 哈哈,我还少说一个,有4种类型 tag tagstring tagfloat tagobject
  • 打赏
  • 举报
回复
不能重载,但是可以写一个同名的public成员覆盖掉它。 TMyComponent = class(TComponent) public Tag: string; end; 但这只适用于自己派生出的类,我还见到标准VCL/FMX组件这样用。不派生的话,可以写Class Helper给TComponent打补丁,增加几个属性。
ooolinux 2018-03-13
  • 打赏
  • 举报
回复
@早打大打打核战争 估计只能这样了。
  • 打赏
  • 举报
回复
最简单的方法,是用一个TStringList,每个TreeNode的Tag代表其index。
ooolinux 2018-03-12
  • 打赏
  • 举报
回复
@lyhoo163 对
ooolinux 2018-03-12
  • 打赏
  • 举报
回复
@早打大打打核战争 如果需要存的字符串是动态产生的,不是一个String变量,这样就不行了,只能用StringList,Tag存它的Index了。
ooolinux 2018-03-12
  • 打赏
  • 举报
回复
@早打大打打核战争 有点复杂,都没看到有哪本书的实例这么写~
  • 打赏
  • 举报
回复
引用 10 楼 u010165006 的回复:
@早打大打打核战争 CB也可以吗?
可以。CB中的String是Delphi string的包装,是一个隐含指针,可以: String s = "aaa", s1; Button1->Tag = *(NativeInt *)((wchar_t **)&s); s1 = (wchar_t *)Button1->Tag; 如果用较早的版本,NativeInt换成int,wchat_t换成char CB中的string是STL string,是C++类,没有隐含指针,所以需要用一个显式指针来 cast: std::string ss = "aaa", ss1; std::string *p = &ss; Button1->Tag = NativeInt(p); ss1 = *(std::string *)Button1->Tag;
lyhoo163 2018-03-12
  • 打赏
  • 举报
回复
Tag就可以保存指针数据。
ooolinux 2018-03-12
  • 打赏
  • 举报
回复
@早打大打打核战争 这样比较方便~ 有时候有这样的需求,比如一个TreeView控件来动态产生磁盘目录,TreeNode的Tag需要存储该节点的全路径,每一个目录或者文件都有一个全路径,这个怎么存方便呢?
加载更多回复(13)

829

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 非技术区
社区管理员
  • 非技术区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧