QT TableWidget應用筆記

1、設置表頭及大小

QStringList header;

    header<<"ID"<<"NAME"<<"年齡"<<"sex"<<"data";
    ui->tableWidget->setHorizontalHeaderLabels(header);
ui->tableWidget->setRowCount(3);    ui->tableWidget->setColumnCount(5); 2、獲得和設置單元內容connect(ui->tableWidget,SIGNAL(cellClicked(int,int)),SLOT(showmark()));

void widget::showmark()

{
    QTableWidgetItem *item = ui->tableWidget->currentItem();
    item->setTextColor(QColor(255,50,50));
    ui->label->setText(item->text());
}
ui->tableWidget->setItem(xx,yy++,new QTableWidgetItem(ui->lineEdit_2->text()));
這樣獲得的item 一定要判斷是否爲空  若爲空 應進行空的對應處理(否則程序會報錯退出)
 
3、插入一行
ui->tableWidget->insertRow(xx);xx表示對應的位置
	
/*給單元格中增加圖標*/QTableWidgetItem *item = new QTableWidgetItem(QIcon("myImage.jpg"), NULL);  //只加入圖標,沒有字符串QTableWidgetItem *item = new QTableWidgetItem(QIcon("myImage.jpg"), myString);   //加入圖標和字符串table->setItem(row, column, item);/*插入一行*/int row = table->rowCount();table->insertRow(row);/*插入一列*/int column = table->columnCount();table->insertColumn(column);//使行列頭自適應寬度,最後一列將會填充空白部分table->horizontalHeader()->setStretchLastSection(true);          //使行列頭自適應寬度,所有列平均分來填充空白部分            table->horizontalHeader()->setResizeMode(QHeaderView::Strtch);        //使行自適應高度,假如行很多的話,行的高度不會一直減小,當達到一定值時會自動生成一個QScrollBartable->verticalHeader()->setResizeMode(QHeaderView::Strtch);//設置單擊選擇一行table->setSelectionBehuavior(QAbstractItemView::SelectRows);//設置每行內容不可編輯table->setEditTriggers(QAbstractItemView::NoEditTriggers);//設置只能選擇一行,不能選擇多行table->setSelectionMode(QAbstractItemView::SingleSelection);/*去掉每行的行號*/QHeaderView *headerView = table->verticalHeader();headerView->setHidden(true);/*設置讓某個單元格或某行選中*/選中單元格:table->setCurrentCell(row, column, QItemSelectionModel::Select);選中一行:table->setCurrentCell(row, QItemSelectionModel::Select);(注意此處的列沒有值)
 
4、刪除某一行 列
FriendTable->removeRow(row);FriendTable->removeColumn (column );
 
5、

6、隔行顯示顏色

ui->tableWidget->setAlternatingRowColors(1); 

 

 

  1. this->ui->friendList->setSelectionMode(QAbstractItemView::SingleSelection); //設置只能選擇一行,不能多行選中  

  2. this->ui->friendList->setEditTriggers(QAbstractItemView::NoEditTriggers);   //設置每行內容不可更改  

  3. this->ui->friendList->setAlternatingRowColors(true);                        //設置隔一行變一顏色,即:一灰一白 


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