wordpress 其他关键词优化一年多少钱
Qt Widgets->C++ Classes->QTableWidget
Qt 5.12版本QTableWidget接口详情(机翻)
QTableWidget类提供了一个带有默认模型的基于项的表视图。
属性
列数columnCount : int
行数rowCount : int
细节描述
QTableWidget类提供了一个带有默认模型的基于项的表视图。
表小部件为应用程序提供标准的表显示工具。 QTableWidget中的项由QTableWidgetItem提供。
如果你想要一个使用你自己的数据模型的表,你应该使用QTableView而不是这个类。
可以使用所需的行数和列数构造表小部件:
tableWidget = new QTableWidget(12, 3, this);
或者,可以在没有给定大小的情况下构造表,并在以后调整大小:
tableWidget = new QTableWidget(this);
tableWidget->setRowCount(10);
tableWidget->setColumnCount(5);
在表外部创建项(没有父部件),并使用setItem()将项插入到表中:
QTableWidgetItem newItem = new QTableWidgetItem(tr(“%1”).arg(
(row+1)(column+1)));
tableWidget->setItem(row, column, newItem);
如果希望在表小部件中启用排序,请在用项目填充后启用排序,否则排序可能会干扰插入顺序(有关详细信息,请参见setItem()))。
表可以被赋予水平和垂直标题。 创建表头的最简单方法是向setHorizontalHeaderLabels()和setVerticalHeaderLabels()函数提供一个字符串列表。 这将为表的列和行提供简单的文本标题。 可以从通常在表外部构造的现有表项创建更复杂的头。例如,我们可以构造一个带有图标和对齐文本的表项,并将其用作特定列的标题:
QTableWidgetItem *cubesHeaderItem = new QTableWidgetItem(tr(“Cubes”));
cubesHeaderItem->setIcon(QIcon(QPixmap(“:/Images/cubed.png”)));
cubesHeaderItem->setTextAlignment(Qt::AlignVCenter);
可以使用rowCount()找到表中的行数,使用columnCount()找到列数。可以使用clear()函数清除表。
See also QTableWidgetItem, QTableView, and Model/View Programming.
属性文档
列数columnCount : int
此属性保存表中的列数
默认情况下,对于没有行和列计数构造的表,此属性的值为0。
访问函数:
int columnCount() const
void setColumnCount(int columns)
行数rowCount : int
此属性保存表中的行数
默认情况下,对于没有行和列计数构造的表,此属性的值为0。
访问函数:
int rowCount() const
void setRowCount(int rows)
成员函数文档
QTableWidget::QTableWidget(QWidget *parent = nullptr)
创建具有给定父类的新表视图。
QTableWidget::QTableWidget(int rows, int columns, QWidget *parent = nullptr)
使用给定的行和列以及给定的父表创建一个新的表视图。
[virtual] QTableWidget::~QTableWidget()
销毁这个QTableWidget。
[signal] void QTableWidget::cellActivated(int row, int column)
当按行和列指定的单元格被激活时,发出此信号
[signal] void QTableWidget::cellChanged(int row, int column)
每当由行和列指定的单元格中的项的数据发生变化时,就会发出此信号。
[signal] void QTableWidget::cellClicked(int row, int column)
每当单击表中的单元格时,就会发出此信号。指定的行和列是单击的单元格。
[signal] void QTableWidget::cellDoubleClicked(int row, int column)
每当双击表中的单元格时,就会发出此信号。指定的行和列是双击的单元格。
[signal] void QTableWidget::cellEntered(int row, int column)
该信号在鼠标光标进入单元格时发出。单元格由行和列指定。
该信号仅在打开mouseTracking或在移动到一个项目时按下鼠标按钮时发出。
[signal] void QTableWidget::cellPressed(int row, int column)
每当表中的单元格被按下时,就会发出这个信号。指定的行和列是按下的单元格。
QWidget *QTableWidget::cellWidget(int row, int column) const
返回在给定行和列的单元格中显示的小部件。
注意:表拥有小部件的所有权。
See also setCellWidget().
[slot] void QTableWidget::clear()
删除视图中的所有项。这也将删除所有的选择和标题。如果不想删除标题,请使用QTableWidget::clearContents()。表的尺寸保持不变。
[slot] void QTableWidget::clearContents()
从视图中删除标题之外的所有项。这也将删除所有选择。表的尺寸保持不变。
void QTableWidget::closePersistentEditor(QTableWidgetItem *item)
关闭item的持久编辑器。
See also openPersistentEditor() and isPersistentEditorOpen().
int QTableWidget::column(const QTableWidgetItem *item) const
返回该项的列
int QTableWidget::columnCount() const
返回表格列数。
注意:属性columnCount的获取函数。 See also setColumnCount().
[signal] void QTableWidget::currentCellChanged(int currentRow, int currentColumn, int previousRow, int previousColumn)
只要当前单元格发生变化,就会发出这个信号。由previousRow和previousColumn指定的单元格是以前具有焦点的单元格,由currentRow和currentColumn指定的单元格是新的当前单元格。
int QTableWidget::currentColumn() const
返回当前项的列。
See also currentRow() and setCurrentCell().
QTableWidgetItem *QTableWidget::currentItem() const
返回当前项。
See also setCurrentItem().
[signal] void QTableWidget::currentItemChanged(QTableWidgetItem *current, QTableWidgetItem *previous)
只要当前项发生变化,就会发出这个信号。previous项是先前具有焦点的项,current是新的当前项。
int QTableWidget::currentRow() const
返回当前项的行。
See also currentColumn() and setCurrentCell().
[override virtual protected] void QTableWidget::dropEvent(QDropEvent *event)
从QAbstractItemView::dropEvent()重新实现。
[virtual protected] bool QTableWidget::dropMimeData(int row, int column, const QMimeData *data, Qt::DropAction action)
处理由拖放操作提供的数据,该操作以给定行和列中的给定操作结束。 如果数据和动作可以被模型处理,则返回true;否则返回false。
See also supportedDropActions().
void QTableWidget::editItem(QTableWidgetItem *item)
如果项目可编辑,则开始编辑该项目。
[override virtual protected] bool QTableWidget::event(QEvent *e)
从QAbstractItemView::event()重新实现。
QList<QTableWidgetItem *> QTableWidget::findItems(const QString &text, Qt::MatchFlags flags) const
使用给定标志查找与文本匹配的项。
QTableWidgetItem *QTableWidget::horizontalHeaderItem(int column) const
返回column所在的水平表头项;不存在则返回nullptr。
See also setHorizontalHeaderItem().
[protected] QModelIndex QTableWidget::indexFromItem(const QTableWidgetItem *item) const
返回与给定项关联的QModelIndex。
注意: 这个函数接受一个非const项
[slot] void QTableWidget::insertColumn(int column)
在column列处的表中插入空列。
[slot] void QTableWidget::insertRow(int row)
表的row行后插入一空行。
bool QTableWidget::isPersistentEditorOpen(QTableWidgetItem *item) const
回持久编辑器是否为item打开。
See also openPersistentEditor() and closePersistentEditor().
QTableWidgetItem *QTableWidget::item(int row, int column) const
如果已存在,则返回给定行和列的项;否则返回nullptr。
See also setItem().
[signal] void QTableWidget::itemActivated(QTableWidgetItem *item)
当指定的item项被激活时,会发出这个信号
QTableWidgetItem *QTableWidget::itemAt(const QPoint &point) const
返回一个指向给定点上的项的指针,如果点没有被表小部件中的项覆盖,则返回nullptr。
See also item().
QTableWidgetItem *QTableWidget::itemAt(int ax, int ay) const
返回与表小部件坐标系中的QPoint(ax, ay)位置相等的项,或者如果指定的点未被表小部件中的项覆盖,则返回nullptr。See also item().
[signal] void QTableWidget::itemChanged(QTableWidgetItem *item)
每当item的数据发生变化时,就会发出这个信号。
[signal] void QTableWidget::itemClicked(QTableWidgetItem *item)
每当单击表中的项时,就会发出此信号。指定的项是单击的项。
[signal] void QTableWidget::itemDoubleClicked(QTableWidgetItem *item)
每当双击表中的一个项时,就会发出这个信号。指定的项是双击的项。
[signal] void QTableWidget::itemEntered(QTableWidgetItem *item)
当鼠标光标进入一个项目时发出这个信号。项目就是输入的项目。
该信号仅在打开mouseTracking或在移动到一个项目时按下鼠标按钮时发出。
[protected] QTableWidgetItem *QTableWidget::itemFromIndex(const QModelIndex &index) const
返回一个指向与给定索引关联的QTableWidgetItem的指针。
[signal] void QTableWidget::itemPressed(QTableWidgetItem *item)
只要按下表中的一个项,就会发出这个信号。指定的项是按下的项。
const QTableWidgetItem *QTableWidget::itemPrototype() const
返回表使用的项原型。
See also setItemPrototype().
[signal] void QTableWidget::itemSelectionChanged()
每当选择发生变化时,就会发出该信号。
See also selectedItems() and QTableWidgetItem::isSelected().
[protected] QList<QTableWidgetItem *> QTableWidget::items(const QMimeData *data) const
返回指向数据对象中包含的项的指针列表。如果对象不是由同一个进程中的QTreeWidget创建的,则列表为空。
[virtual protected] QMimeData *QTableWidget::mimeData(const QList<QTableWidgetItem *> items) const
返回一个对象,该对象包含指定项的序列化描述。用于描述项的格式是从mimeTypes()函数获得的。如果项列表为空,则返回0,而不是序列化的空列表。
[virtual protected] QStringList QTableWidget::mimeTypes() const
返回可用于描述tablewidget项列表的MIME类型列表。
See also mimeData().
void QTableWidget::openPersistentEditor(QTableWidgetItem *item)
打开给定项的编辑器。编辑器在编辑后保持打开状态
See also closePersistentEditor() and isPersistentEditorOpen().
void QTableWidget::removeCellWidget(int row, int column)
删除按行和列指示的单元格上的小部件集。
[slot] void QTableWidget::removeColumn(int column)
从表中删除列column及其所有项。
[slot] void QTableWidget::removeRow(int row)
从表中删除行row及其所有项。
int QTableWidget::row(const QTableWidgetItem *item) const
返回该项的行。
int QTableWidget::rowCount() const
返回行数。
注意: rowCount属性的获取函数。
See also setRowCount().
[slot] void QTableWidget::scrollToItem(const QTableWidgetItem *item, QAbstractItemView::ScrollHint hint = EnsureVisible)
必要时滚动视图以确保项目可见。hint参数更精确地指定操作后项应该位于的位置。
QList<QTableWidgetItem *> QTableWidget::selectedItems() const
返回所有选定项的列表。
这个函数返回一个指向所选单元格内容的指针列表。使用selectedinindexes()函数检索完整的选择,包括空单元格。See also selectedIndexes().
QList QTableWidget::selectedRanges() const
返回所有选定范围的列表。
See also QTableWidgetSelectionRange.
void QTableWidget::setCellWidget(int row, int column, QWidget *widget)
将给定小部件设置为显示在给定行和列的单元格中,将小部件的所有权传递给表。
如果单元格小部件A被单元格小部件B替换,则单元格小部件A将被删除。例如,在下面的代码片段中,QLineEdit对象将被删除。
setCellWidget(row, column, new QLineEdit);
…
setCellWidget(row, column, new QTextEdit);
See also cellWidget().
void QTableWidget::setColumnCount(int columns)
将此表模型中的列数设置为列。如果该值小于columnCount(),则丢弃不需要的列中的数据。
注意: columnCount属性的设置函数。
See also columnCount() and setRowCount().
void QTableWidget::setCurrentCell(int row, int column)
将当前单元格设置为位置(row、column)上的单元格。
根据当前的选择模式,单元格也可能被选中。
See also setCurrentItem(), currentRow(), and currentColumn().
void QTableWidget::setCurrentCell(int row, int column, QItemSelectionModel::SelectionFlags command)
使用给定命令将当前单元格设置为位置(row、column)处的单元格。
See also setCurrentItem(), currentRow(), and currentColumn().
void QTableWidget::setCurrentItem(QTableWidgetItem *item)
将当前项设置为item。
除非选择模式为NoSelection,否则项目也会被选中。
See also currentItem() and setCurrentCell().
void QTableWidget::setCurrentItem(QTableWidgetItem *item, QItemSelectionModel::SelectionFlags command)
使用给定的命令将当前项设置为item。
See also currentItem() and setCurrentCell().
void QTableWidget::setHorizontalHeaderItem(int column, QTableWidgetItem *item)
设置列的水平表头项。如有必要,将增加列数以适应该项。如果有之前存在,则删除前一个表头项。
See also horizontalHeaderItem().
void QTableWidget::setHorizontalHeaderLabels(const QStringList &labels)
使用labels设置水平表头。
void QTableWidget::setItem(int row, int column, QTableWidgetItem *item)
将给定行和列的项设置为item。
表获得项的所有权。
注意,如果启用了排序(see sortingEnabled)并且column是当前排序列,则该行将被移动到由item确定的排序位置。
如果你想设置特定行的几个项(比如,通过在循环中调用setItem()),你可能想在这样做之前关闭排序,然后再打开它;这将允许您对同一行中的所有项使用相同的row参数(即setItem()不会移动该行)。
See also item() and takeItem().
void QTableWidget::setItemPrototype(const QTableWidgetItem *item)
将表的项属性设置为指定的item。
当表小部件需要创建一个新的表项时,它将使用项属性克隆函数。 例如,当用户在空单元格中进行编辑时。当你有一个QTableWidgetItem子类并且想要确保QTableWidget创建你的子类的实例时,这是很有用的。
表格拥有原型的所有权。
See also itemPrototype().
void QTableWidget::setRangeSelected(const QTableWidgetSelectionRange &range, bool select)
range根据select选择或取消选择。
void QTableWidget::setRowCount(int rows)
将此表模型中的行数设置为行。如果该值小于rowCount(),则丢弃不需要的行中的数据。
注意: rowCount属性的设置函数。
See also rowCount() and setColumnCount().
void QTableWidget::setVerticalHeaderItem(int row, QTableWidgetItem *item)
将row行的垂直标题项设置为item。
See also verticalHeaderItem().
void QTableWidget::setVerticalHeaderLabels(const QStringList &labels)
使用标签设置垂直表头标签。
void QTableWidget::sortItems(int column, Qt::SortOrder order = Qt::AscendingOrder)
根据列和顺序对表小部件中的所有行进行排序。
[virtual protected] Qt::DropActions QTableWidget::supportedDropActions() const
返回此视图支持的拖放操作。
See also Qt::DropActions.
QTableWidgetItem *QTableWidget::takeHorizontalHeaderItem(int column)
移除垂直表头column列处标题项,但不删除它。
QTableWidgetItem *QTableWidget::takeItem(int row, int column)
移除row 行,column 列的项,但不删除它。
QTableWidgetItem *QTableWidget::takeVerticalHeaderItem(int row)
移除垂直表头row行处标题项,但不删除它。
QTableWidgetItem *QTableWidget::verticalHeaderItem(int row) const
返回row行的垂直标题项。
See also setVerticalHeaderItem().
int QTableWidget::visualColumn(int logicalColumn) const
返回给定logicalColumn的可视列号。
QRect QTableWidget::visualItemRect(const QTableWidgetItem *item) const
返回item处的项所占用的视窗上的矩形。
int QTableWidget::visualRow(int logicalRow) const
返回给定logicalRow的可视行号。