日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > c/c++ >内容正文

c/c++

【Qt5.8】Qt5.8中QTableWidget 类介绍

發(fā)布時間:2024/4/21 c/c++ 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【Qt5.8】Qt5.8中QTableWidget 类介绍 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

00. 目錄

    • 00. 目錄
    • 01. QTableWidget介紹
    • 02. 成員函數(shù)簡介

01. QTableWidget介紹

QTableWidget是基于QTableView的一個默認的視圖模型;它用于顯示一個標準的表格。表格中每一個項通過QTableWidgetItem來實現(xiàn)。

頭文件:#include
qmake:QT += widgets
繼承自:QTableView

如果你想要一個使用你自己的數(shù)據(jù)模型的表,你應該使用QTableView而不是這個類。

可以使用指定的行數(shù)和列數(shù)構造一個QTableWidget對象。

tableWidget = new QTableWidget(12, 3, this);

或者可以先構造一個QTableWidget對象,然后指定其行數(shù)和列數(shù)。

tableWidget = new QTableWidget(this);tableWidget->setRowCount(10);tableWidget->setColumnCount(5);

表格中的每一個項可以在表格之外創(chuàng)建,沒有父對象,然后使用setItem()插入到表格中。

QTableWidgetItem *newItem = new QTableWidgetItem(tr("%1").arg((row+1)*(column+1)));tableWidget->setItem(row, column, newItem);

我們可以構造一個帶有圖標和對齊文本的表項,并將其用作特定列的標題

QTableWidgetItem *cubesHeaderItem = new QTableWidgetItem(tr("Cubes"));cubesHeaderItem->setIcon(QIcon(QPixmap(":/Images/cubed.png")));cubesHeaderItem->setTextAlignment(Qt::AlignVCenter);

02. 成員函數(shù)簡介

1、默認構造函數(shù)

QTableWidget::QTableWidget(QWidget * parent = 0)

2、使用給定的行數(shù)rows和列數(shù)columns,構造表格

QTableWidget::QTableWidget(int rows,int columns, QWidget * parent = 0)

3、析構函數(shù)

QTableWidget::~QTableWidget()

4、當位于第row行第column列的單元格被激活時,觸發(fā)該信號。如果該單元格可以編輯則不觸發(fā)。

void QTableWidget::cellActivated(int row,int column) [signal] 信號函數(shù)

5、當位于第row行第column列的單元格中的數(shù)據(jù)發(fā)生變化時,觸發(fā)該信號

void QTableWidget::cellChanged(int row,int column)[signal] 信號函數(shù)

6、當位于第row行第column列的單元格被點擊時,觸發(fā)該信號。

void QTableWidget::cellClicked(int row,int column)[signal] 信號函數(shù)

7、當位于第row行第column列的單元格被雙擊時,觸發(fā)該信號。

void QTableWidget::cellDoubleClicked(int row,int column)[signal] 信號函數(shù)

8、當位于第row行第column列的單元格獲取鼠標光標時,觸發(fā)該信號。需要設置表格setMouseTracking(true),默認是false

void QTableWidget::cellEntered(int row,int column)[signal] 信號函數(shù)

9、當位于第row行第column列的單元格被按下時,觸發(fā)該信號。

void QTableWidget::cellPressed(int row,int column)[signal] 信號函數(shù)

10、返回位于第row行第column列的單元格中窗口部件。

QWidget * QTableWidget::cellWidget(int row,int column) const

11、刪除表格中所有的項(QTableWidgetItem),但是表格還在。

void QTableWidget::clear() [slot]槽函數(shù)

12、刪除表格中所有的項(QTableWidgetItem),不包括表頭中的,但是表格還在

void QTableWidget::clearContents() [slot]槽函數(shù)

13、關閉指定item的可編輯狀態(tài)

void QTableWidget::closePersistentEditor(QTableWidgetItem * item)

14、返回指定item在第幾列。

int QTableWidget::column(constQTableWidgetItem * item) const

15、 當單元格的焦點變化時,發(fā)射該信號。currentRow當前行currentColumn當前列;int previousRow之前的行 int previousColumn之前的列

void QTableWidget::currentCellChanged(int currentRow,int currentColumn, int previousRow,int previousColumn) [signal] 信號函數(shù)

16、返回當前單元格在第幾列

int QTableWidget::currentColumn() const

17、 返回當前的單元格中的item

QTableWidgetItem * QTableWidget::currentItem() const

18、當單元格的焦點變化時,發(fā)射該信號。current當前的項item;previous之前的項item

void QTableWidget::currentItemChanged(QTableWidgetItem * current,QTableWidgetItem * previous)[signal] 信號函數(shù)

19、返回當前單元格在第幾行。

int QTableWidget::currentRow() const

20、當向該表格中拖放時,觸發(fā)該事件

void QTableWidget::dropEvent(QDropEvent * event) [virtual protected]

21、如果指定的單元格能處理拖放中的數(shù)據(jù),則返回真,否則返回假

bool QTableWidget::dropMimeData(int row,int column, const QMimeData * data,Qt::DropAction action)[virtual protected]

22、如果item能編輯,開始編輯該項。

void QTableWidget::editItem(QTableWidgetItem * item)

23、返回匹配text的項的列表。

QList<QTableWidgetItem *> QTableWidget::findItems(constQString & text, Qt::MatchFlags flags) const

24、返回第column列的表頭項,如果沒有則返回0。

QTableWidgetItem * QTableWidget::horizontalHeaderItem(int column) const

25、返回指定item的QModelIndex(QAbstractItemModel的引索)

QModelIndex QTableWidget::indexFromItem(QTableWidgetItem * item) const [protected]

26、在第column列插入一個空列。

void QTableWidget::insertColumn(int column)

27、 在第row行插入一個空行。

void QTableWidget::insertRow(int row)

28、 返回在第row行第column列的項,如果不存在返回0。

QTableWidgetItem * QTableWidget::item(int row,int column) const

29、 項被激活,發(fā)射信號。

void QTableWidget::itemActivated(QTableWidgetItem * item)[signal] 信號函數(shù)

30、返回指定坐標point處的項,如果該坐標處沒有項則返回0。該坐標相對于表格窗口。

QTableWidgetItem * QTableWidget::itemAt(constQPoint & point) const

31、同上。QPoint(x,y)

QTableWidgetItem * QTableWidget::itemAt(int ax,int ay) const

32、 當item的數(shù)值發(fā)生改變時,觸發(fā)該信號

void QTableWidget::itemChanged(QTableWidgetItem * item)[signal] 信號函數(shù)

33、當item被點擊時,觸發(fā)該信號

void QTableWidget::itemClicked(QTableWidgetItem * item)[signal] 信號函數(shù)

34、當item被雙擊時,觸發(fā)該信號

void QTableWidget::itemDoubleClicked(QTableWidgetItem * item)[signal] 信號函數(shù)

35、當編輯item時(獲取鼠標)時,觸發(fā)該信號。需要設置表格setMouseTracking(true),默認是false

void QTableWidget::itemEntered(QTableWidgetItem * item)

36、 返回給定index的項,QModelIndex指向數(shù)據(jù)?

QTableWidgetItem * QTableWidget::itemFromIndex(constQModelIndex & index) const [protected]

37、當item被按下時,觸發(fā)該信號

void QTableWidget::itemPressed(QTableWidgetItem * item)[signal] 信號函數(shù)

38、返回項的原型,通常用于克隆項

const QTableWidgetItem * QTableWidget::itemPrototype() const

39、當被選中的item發(fā)生改變時,觸發(fā)該信號。

void QTableWidget::itemSelectionChanged()[signal] 信號函數(shù)

40、返回包含MIME data數(shù)據(jù)所有的項。

QList<QTableWidgetItem *> QTableWidget::items(constQMimeData * data) const [protected]

41、返回項列表中MIME數(shù)據(jù)的容器

QMimeData * QTableWidget::mimeData(constQList<QTableWidgetItem *> items) const[protected]

42、 返回表格中所有項的一個MIME數(shù)據(jù)

QStringList QTableWidget::mimeTypes() const[protected

43、 開始編輯item

void QTableWidget::openPersistentEditor(QTableWidgetItem * item)

44、 刪除第row行第column列的窗口部件

void QTableWidget::removeCellWidget(int row,int column)

45、 刪除第column列

void QTableWidget::removeColumn(int column)[slot]

46、刪除第row行

void QTableWidget::removeRow(int row)[slot]

47、返回指定item所在的行數(shù)

int QTableWidget::row(constQTableWidgetItem * item) const[slot]

48、指定的item比較突顯出來,方便辨認。

void QTableWidget::scrollToItem(constQTableWidgetItem * item, QAbstractItemView::ScrollHint hint = EnsureVisible)[slot]

49、返回選中的項的列表

QList<QTableWidgetItem *> QTableWidget::selectedItems()

50、返回選擇范圍

QList<QTableWidgetSelectionRange> QTableWidget::selectedRanges() const

51、將widget窗口部件放到第row行第column列。

void QTableWidget::setCellWidget(int row,int column, QWidget * widget)

52、將位于第row行第column列的項設置為當前項(獲取焦點)

void QTableWidget::setCurrentCell(int row,int column)

53、設置指定的item為當前項

void QTableWidget::setCurrentItem(QTableWidgetItem * item)

54、將第column列的水平表頭項設為item

void QTableWidget::setHorizontalHeaderItem(int column,QTableWidgetItem * item)

55、 使用一組標簽設置水平表頭

void QTableWidget::setHorizontalHeaderLabels(constQStringList & labels)

56、設置第row行第column列的項;注意如果使能排序,行位置會變化

void QTableWidget::setItem(int row,int column, QTableWidgetItem * item)

57、通過item設置表的標準項模型。

void QTableWidget::setItemPrototype(constQTableWidgetItem * item)

58、選擇或取消范圍

void QTableWidget::setRangeSelected(constQTableWidgetSelectionRange & range, bool select)

59、設置第row行的垂直表頭的項

void QTableWidget::setVerticalHeaderItem(int row,QTableWidgetItem * item)

60、 通過一組標簽設置垂直表頭

void QTableWidget::setVerticalHeaderLabels(constQStringList & labels)

61、根據(jù)規(guī)則order設置第column列的所有行

void QTableWidget::sortItems(int column,Qt::SortOrder order = Qt::AscendingOrder)

62、 返回該表支持的所有拖放操作

Qt::DropActions QTableWidget::supportedDropActions() const

63、 將項從第column列的水平表頭中去除,但不刪除它(不delete item)。
QTableWidgetItem * QTableWidget::takeHorizontalHeaderItem(int column)

64、將項從第row行第column列去除,但不刪除它

QTableWidgetItem * QTableWidget::takeItem(int row,int column)

65、返回垂直表頭中第row行的項

QTableWidgetItem * QTableWidget::verticalHeaderItem(int row) const

66、返回給定邏輯列的可視列。

int QTableWidget::visualColumn(int logicalColumn) const

67、返回item所占的單元格的位置和大小

QRect QTableWidget::visualItemRect(constQTableWidgetItem * item) const

68、返回給定邏輯行的可視行。

int QTableWidget::visualRow(int logicalRow) const

總結

以上是生活随笔為你收集整理的【Qt5.8】Qt5.8中QTableWidget 类介绍的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內容還不錯,歡迎將生活随笔推薦給好友。