qml tableview 实现Delegate的2种办法

Qt Quick Control 1.4 版本的TableView

1.可以使用Qt Table View自带的rowDelegate等实现

2.可以使用style:TableViewStyle的方式实现,

他们都有rowDelegate等功能,各有各的特色

第1种的优点是代码可重用性可能更好一点,

style单独用来绘制滚动条,滚动条可以单独做出一个接口方便调用,

代码可重用性能可能更好一点

缺点是,如果需要支持右键点击事件,Qt Quick Control 1.4版本是不支持的,而且不太能用MouseArea

因为它的基类已经有了

(1)可以修改源代码加上右键点击事件,(2)可以用style{MouseAre{}}的方式来支持右键点击事件

这2种办法都是可以的

关于第二种办法,它的有点是功能比第一种办法的功能更大一些,

它几乎支持第一种办法的所有功能,也可以再style里面加上MouseAre来支持鼠标右键点击事件,

缺点就是代码的可重用性可能不太好,以为所有的代码,委托,鼠标事件都放到style里面了,

可能代码太多会影响代码的可重用性,当然如果控制的好,也是可以把整个style封装成为一个接口的

也是可以重用的

总之2种办法都可以使用,适当的处理好就可以了

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值