Thinkvd 开发日志
参考:http://blog.csdn.net/vah101/archive/2011/02/17/6190809.aspx
里面已经说明如何实现,在此就不再重复,反自己遇到的问题说一下:
问题1:checkbox后面显示状态数字
问题2:QTreeView中第一行的checkbox状态改变,要Mouse离开才看到响应.
问题1看了一个Qt源代码,在void QStyledItemDelegate::initStyleOption(QStyleOptionViewItem *option,
const QModelIndex &index) const未有:
value = index.data(Qt::DisplayRole);
if (value.isValid() && !value.isNull()) {
v4->features |= QStyleOptionViewItemV2::HasDisplay;
v4->text = displayText(value, v4->locale);</

在Qt开发中,使用TreeModel和QTreeView时遇到复选框显示状态数字及响应延迟的问题。问题1通过在Model的data函数中设置Checkbox的数据为空来解决。问题2可能由于自定义Model或View导致,通过刷新两次数据并在CheckStateRole时更新解决。参考了Qt源代码和editabletreemodel示例。
6598

被折叠的 条评论
为什么被折叠?



