zoukankan      html  css  js  c++  java
  • [QT][DEMO] QTableWidget 设置某一列禁止编辑

    例程 : 又是好风景 : http://blog.csdn.net/qiao_yihan/article/details/46413345

    关键点: 

    1.QTableWidgetItem 的 setFlags() 和 flags()

    2.QTableWidget 不能 设置 setEditTriggers() 为 QAbstractItemView::NoEditTriggers,否则1中的设置会失效

    table_widget->setEditTriggers(QAbstractItemView::NoEditTriggers); //设置不可编辑

    代码:

        int NumOfReg = 5;
        ui->tableWidget->setColumnCount(11);
        ui->tableWidget->setRowCount(NumOfReg);
        /* 设置 tableWidget */
        ui->tableWidget->setHorizontalHeaderLabels(QStringList() << "Id" << "Name" << "Unit" << "Value" << "Min" << "Max"  
                                                       << "Type" << "Mode" << "Enable" << "Last read" << "Last write");
        ui->tableWidget->verticalHeader()->setVisible(false); // 隐藏水平header
        ui->tableWidget->setSelectionBehavior(QAbstractItemView::SelectItems);   // 单个选中
        ui->tableWidget->setSelectionMode(QAbstractItemView::SingleSelection);  // 可以选中多个
    
    
        /* 设置 Id Name 字段的值不能修改 */
        /* 设置不可修改的Id Name两列的背景颜色为灰色 */
        for(int i = 0; i < NumOfReg; i++) {
            QTableWidgetItem *item = new QTableWidgetItem();
            //item->setBackground(QBrush(QColor(Qt::lightGray)));
            item->setFlags(item->flags() & (~Qt::ItemIsEditable));
            ui->tableWidget->setItem(i, 0, item);
        }
        for(int i = 0; i < NumOfReg; i++) {
            QTableWidgetItem *item = new QTableWidgetItem();
            item->setBackground(QBrush(QColor(Qt::lightGray)));
            item->setFlags(item->flags() & (~Qt::ItemIsEditable));
            ui->tableWidget->setItem(i, 1, item);
        }
    MainWindow.c

    工程文件:

     http://download.csdn.net/detail/ewrest/9854319

    如果问题解决起来不妥或者有更好的解决办法,麻烦请告知,帮助曾经和你一样的入门者,谢谢。
  • 相关阅读:
    zabbix 监控获取源码包的地址
    为MongoDB加集群验证的关键点
    Mongodb 集群加keyFile认证
    Prometheus完整的部署方案+实战实例
    如何让你的linux的命令行变得很炫
    redis实现加锁的几种方法示例详解
    phpquerylist 抓取数据详解
    mysql 主从配置,主-》windows,从-》centos6.5
    VMware 虚拟机centos下链接网络配置
    【Mysql】表链接
  • 原文地址:https://www.cnblogs.com/ourran/p/6913256.html
Copyright © 2011-2022 走看看