当前位置: 代码迷 >> QT开发 >> 在QtreeWidget中显示表格线,该如何处理
  详细解决方案

在QtreeWidget中显示表格线,该如何处理

热度:218   发布时间:2016-04-25 03:06:13.0
在QtreeWidget中显示表格线
如何在QtreeWidget中显示表格线像QTableWidget一样的有表格线
------解决思路----------------------
QTreeWidget每一个格子用一个QLabel代替,设置QLabel格式有Frame。

    QTreeWidgetItem *itemParent;
    QTreeWidgetItem *itemSon;
    QLabel *label;
    for (int i = 0; i < 10; i++)
    {
        itemParent = new QTreeWidgetItem();
        m_tree->addTopLevelItem(itemParent);
        label = new QLabel(QString::number(i + 1));
        label->setFrameShape(QFrame::Box);
        m_tree->setItemWidget(itemParent, 0, label);
        label = new QLabel(QString("Parent %1").arg(i + 1));
        label->setFrameShape(QFrame::Box);
        m_tree->setItemWidget(itemParent, 1, label);
        for (int j = 0; j < 2; j++)
        {
            itemSon = new QTreeWidgetItem(itemParent);
            m_tree->addTopLevelItem(itemSon);
            label = new QLabel(QString::number(j + 1));
            label->setFrameShape(QFrame::Box);
            m_tree->setItemWidget(itemSon, 0, label);
            label = new QLabel(QString("Son %1").arg(j + 1));
            label->setFrameShape(QFrame::Box);
            m_tree->setItemWidget(itemSon, 1, label);
        }
    }

------解决思路----------------------
还有用Qt Style Sheet
setStyleSheet("QTreeWidget::item{border-right: 1px solid red;border-bottom: 1px solid red;}");



引用:
如何在QtreeWidget中显示表格线像QTableWidget一样的有表格线