QTreeWidget 中能象显示 QTableWidget 一样的表格线吗?

Jonix 2013-01-15 09:54:22
QTreeWidget 中能象显示 QTableWidget 一样的表格线吗?
我是想要竖线
...全文
918 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
Jonix 2013-01-21
  • 打赏
  • 举报
回复
引用 2 楼 freebendy 的回复:
引用 楼主 Jonix 的回复:QTreeWidget 中能象显示 QTableWidget 一样的表格线吗? 我是想要竖线 2个办法: 1.使用delegate自己绘制 2.使用style sheet 例如: XML/HTML code?12345QTreeWiget::item {border: 1px solid #d9d9d9;border-top……
我试了试:

QTreeWiget::item {
background-color: rgb(255, 170, 0);
}
也没有反应,是代码不正确,还是需要有什么开关的??
Jonix 2013-01-21
  • 打赏
  • 举报
回复
引用 2 楼 freebendy 的回复:
引用 楼主 Jonix 的回复:QTreeWidget 中能象显示 QTableWidget 一样的表格线吗? 我是想要竖线 2个办法: 1.使用delegate自己绘制 2.使用style sheet 例如: XML/HTML code?12345QTreeWiget::item {border: 1px solid #d9d9d9;border-top……
简单点用stylesheet, 不过这代码放进去不行啊? 试着改了改也不行。
Jonix 2013-01-21
  • 打赏
  • 举报
回复
刚才试了试用命令设,的确是可以的。 不过很难看,线条不能再细了? 我设了 0.1 就不行了。 效果不好。 但还是谢谢了。
Jonix 2013-01-21
  • 打赏
  • 举报
回复
其实我没有用命令,我是在Designer中直接设置的属性。
BenKwan 2013-01-21
  • 打赏
  • 举报
回复
引用 10 楼 Jonix 的回复:
明白了,只是把内容放外部文件了,那跟我的原理是完全一样的。 可是我这里就是没有反应。。。
你是直接调用widget的setStyleSheet? 那应该这样写:

treeWidget->setStyleSheet(QString::fromUtf8("::item {\n"
"    border: 1px solid blue;\n"
"    border-top-color: transparent;\n"
"    border-bottom-color: transparent;\n"
"}"));
我这里也能正常显示
Jonix 2013-01-21
  • 打赏
  • 举报
回复
明白了,只是把内容放外部文件了,那跟我的原理是完全一样的。 可是我这里就是没有反应。。。
BenKwan 2013-01-21
  • 打赏
  • 举报
回复
效果图:
BenKwan 2013-01-21
  • 打赏
  • 举报
回复
引用 7 楼 Jonix 的回复:
引用 6 楼 freebendy 的回复:引用 4 楼 Jonix 的回复:引用 2 楼 freebendy 的回复:引用 楼主 Jonix 的回复:QTreeWidget 中能象显示 QTableWidget 一样的表格线吗? 我是想要竖线 2个办法: 1.使用delegate自己绘制 2.使用style sheet 例如: XML/HTML code?……
Qss和css文件一样,将style sheet写到文件去,更方便管理。我给你看写的例子: 我的pro文件: OTHER_FILES += default.qss RESOURCES += default.qrc 我的qrc文件:

<RCC>
    <qresource prefix="/">
        <file>default.qss</file>
    </qresource>
</RCC>
我的qss文件:

QTreeWidget::item {
    border: 1px solid blue;
    border-top-color: transparent;
    border-bottom-color: transparent;
}
我main.cpp增加:

QFile styleFile(":/default.qss");
styleFile.open(QFile::ReadOnly);
QString styleSheet = QLatin1String(styleFile.readAll());
app.setStyleSheet(styleSheet);
Jonix 2013-01-21
  • 打赏
  • 举报
回复
引用 6 楼 freebendy 的回复:
引用 4 楼 Jonix 的回复:引用 2 楼 freebendy 的回复:引用 楼主 Jonix 的回复:QTreeWidget 中能象显示 QTableWidget 一样的表格线吗? 我是想要竖线 2个办法: 1.使用delegate自己绘制 2.使用style sheet 例如: XML/HTML code?12345QTreeWiget::item……
我是设在 QTreeWidget 的 styleSheet 中的。 请问QSS是什么东西?
BenKwan 2013-01-21
  • 打赏
  • 举报
回复
引用 4 楼 Jonix 的回复:
引用 2 楼 freebendy 的回复:引用 楼主 Jonix 的回复:QTreeWidget 中能象显示 QTableWidget 一样的表格线吗? 我是想要竖线 2个办法: 1.使用delegate自己绘制 2.使用style sheet 例如: XML/HTML code?12345QTreeWiget::item {border: 1px sol……
我在qss里面加可以阿

QTreeWidget::item {
    border: 1px solid blue;
    border-top-color: transparent;
    border-bottom-color: transparent;
}
BenKwan 2013-01-16
  • 打赏
  • 举报
回复
参考http://qt-project.org/doc/qt-4.8/stylesheet-examples.html
BenKwan 2013-01-16
  • 打赏
  • 举报
回复
引用 楼主 Jonix 的回复:
QTreeWidget 中能象显示 QTableWidget 一样的表格线吗? 我是想要竖线
2个办法: 1.使用delegate自己绘制 2.使用style sheet 例如:

QTreeWiget::item {
border: 1px solid #d9d9d9;
border-top-color: transparent;
border-bottom-color: transparent;
}
winter_262 2013-01-16
  • 打赏
  • 举报
回复
可以的。。。。。。。。。。。。。。。。。。。。。。。

16,213

社区成员

发帖
与我相关
我的任务
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
  • Qt
  • 亭台六七座
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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