table widget 控件的应用

来源:互联网 发布:fs2you下载器 mac 编辑:程序博客网 时间:2024/05/21 22:51

ui->file_show->setRowCount()    //设置行

ui->file_show->setColumnCount()  //设置列

ui->file_show->horizontalHeader()->setStretchLastSection(true);  //使行充满表格
ui->file->horizontalHeader()->setStretchLastSection(true);  //充满表宽度
ui->file_show->setEditTriggers(QAbstractItemView::NoEditTriggers);   //设置表格内容不可修改
ui->test->verticalHeader()->setDefaultSectionSize(210);   //设置行高
ui->file->horizontalHeader()->setDefaultSectionSize(150); //设置列宽

QHeaderView* headerView = ui->file->verticalHeader(); //隐藏行号
    headerView->setHidden(true);

    QHeaderView* headerView2 = ui->file_show->horizontalHeader(); //隐藏列号
    headerView2->setHidden(true);
ui->file->setSelectionMode(QAbstractItemView::SingleSelection); //单选
ui->file->setSelectionBehavior(QAbstractItemView::SelectRows); //选择一行
QStringList list;
    list << "number" << "filename" << "time(s)";
    ui->file->setHorizontalHeaderLabels(list);   //设置列名

ui->file->setShowGrid(false);  //设置无格子线
ui->file_show->setEditTriggers(QAbstractItemView::NoEditTriggers);   //设置表格内容不可修改

 QTableWidgetItem * item = ui->file->item(i, 1);
        item->setFlags(item->flags() & (~Qt::ItemIsEditable));   //设置写入内容不可编辑

ui->file_show->insertRow(i);   //插入一行

ui->file->setItem(i, 0, new QTableWidgetItem(QString::number(i+1,10))); //写入内容
QItemSelectionModel *selectionModel = ui->file_show->selectionModel();   //获取tablewigdet选择模型   tablewigdet 不用设置数据模型 设置了数据模型了可以使用QItemSelectionModel 的singal
QObject:: connect(selectionModel, SIGNAL(currentChanged(QModelIndex,QModelIndex)),this, SLOT(updataSelection(QModelIndex, QModelIndex)));  //当前行改变信号
int row = ui->file_show->currentRow(); //获得当前行号
unsigned int row = ui->file->currentColumn();  //获得当前列

QTableWidgetItem *table_name = ui->file_show->currentItem();  //读取当前行的内容
QString string = table_name->text();   //将内容转换成string型
int i = ui->file_show->rowCount();   //获得table_widget的行数

ui->file_show->setCurrentCell(row, Column);   //设置当前行的位置




0 0
原创粉丝点击