QTableWidget常用操作

ui.tableWidget->setEditTriggers(QAbstractItemView::NoEditTriggers); //设置不可编辑
    ui.tableWidget->setColumnCount(4);                //设置列数
    //ui.tableWidget->setColumnWidth(0, 130);    //表格设置列宽,每一列都需要设置
    //ui.tableWidget->setColumnWidth(1, 130);    //表格设置列宽,每一列都需要设置
    //ui.tableWidget->setColumnWidth(2, 60);    //表格设置列宽,每一列都需要设置
    //ui.tableWidget->setColumnWidth(3, 178);    //表格设置列宽,每一列都需要设置

    ui.tableWidget->setRowCount(6);//设置行数  
    for (int rows = 0; rows < 6; rows++)
    {
        ui.tableWidget->setRowHeight(rows, 32);//行高
    }
    ui.tableWidget->setShowGrid(false);//隐藏栅格
    ui.tableWidget->setFrameShape(QFrame::NoFrame); //设置无边框
    QStringList m_Header;
    m_Header << QStringLiteral("姓名") << QStringLiteral("用时") << QStringLiteral("选项") << QStringLiteral("答案是否正确");
    ui.tableWidget->setHorizontalHeaderLabels(m_Header);//添加横向表头
    ui.tableWidget->verticalHeader()->setVisible(false);//纵向表头可视化
    ui.tableWidget->horizontalHeader()->setVisible(true);//横向表头可视化
    ui.tableWidget->horizontalHeader()->setMinimumHeight(36);//表头行高
    //ui.tableWidget->setItemDelegate(); //设置无虚线
    ui.tableWidget->horizontalHeader()->setHighlightSections(false);  //防止表头塌陷
    ui.tableWidget->horizontalHeader()->setSectionResizeMode(QHeaderView::Stretch);//平均列宽   宽度不可变
    ui.tableWidget->horizontalHeader()->setFrameShape(QFrame::NoFrame);
    for (int columns = 0; columns < 4; columns++)
    {
        ui.tableWidget->horizontalHeaderItem(columns)->setTextAlignment(Qt::AlignCenter);//居中显示
        ui.tableWidget->horizontalHeaderItem(columns)->setBackgroundColor(QColor(245, 245, 245));//设置前景颜色
        ui.tableWidget->horizontalHeaderItem(columns)->setTextColor(QColor(82, 96, 110));//设置文本颜色
        ui.tableWidget->horizontalHeaderItem(columns)->setFont(QFont("Microsoft YaHei", 10));//设置字体
    }

    for (int rows = 0; rows < 6; rows++)
    {
        for (int columns = 0; columns < 4; columns++)
        {            
            ui.tableWidget->setItem(rows, columns, new QTableWidgetItem(QStringLiteral("")));
        }
    }

    for (int rows = 0; rows < 6; rows++)
    {
        for (int columns = 0; columns < 4; columns++)
        {
            if (1 == rows%2)
            {
                ui.tableWidget->item(rows, columns)->setTextAlignment(Qt::AlignCenter);//居中显示
                ui.tableWidget->item(rows, columns)->setBackgroundColor(QColor(245, 245, 245));//设置前景颜色
                ui.tableWidget->item(rows, columns)->setTextColor(QColor(82, 96, 110));//设置文本颜色
                ui.tableWidget->item(rows, columns)->setFont(QFont("Microsoft YaHei", 10));//设置字体
            }
            else
            {
                ui.tableWidget->item(rows, columns)->setTextAlignment(Qt::AlignCenter);//居中显示
                ui.tableWidget->item(rows, columns)->setBackgroundColor(QColor(255, 255, 255));//设置前景颜色
                ui.tableWidget->item(rows, columns)->setTextColor(QColor(82, 96, 110));//设置文本颜色
                ui.tableWidget->item(rows, columns)->setFont(QFont("Microsoft YaHei",10));//设置字体
            }

        }
    }
    ui.tableWidget->setSelectionBehavior(QAbstractItemView::SelectRows);  //设置选择行为时每次选择一行
    ui.tableWidget->setEditTriggers(QAbstractItemView::NoEditTriggers); //设置不可编辑
 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章