📄 qtable.html
字号:
<p>这很有用,例如如果你要使用<a href="qintdict.html">QIntDict</a>,以把整数映射到稀疏表格中的使用的单元格上。<h3 class=fn>void <a name="insertColumns"></a>QTable::insertColumns ( int col, int count = 1 )<tt> [virtual slot]</tt></h3>在列<em>col</em>处插入<em>count</em>个空列。<p> <p>也参见<a href="#insertRows">insertRows</a>()和<a href="#removeColumn">removeColumn</a>()。<h3 class=fn>void <a name="insertRows"></a>QTable::insertRows ( int row, int count = 1 )<tt> [virtual slot]</tt></h3>在行<em>row</em>处插入<em>count</em>个空行。<p> <p>也参见<a href="#insertColumns">insertColumns</a>()和<a href="#removeRow">removeRow</a>()。<h3 class=fn>void <a name="insertWidget"></a>QTable::insertWidget ( int row, int col, <a href="qwidget.html">QWidget</a> * w )<tt> [virtual protected]</tt></h3>在内部数据结构里,在<em>row</em>、<em>col</em>处插入部件<em>w</em>。详情参见<a href="#setCellWidget">setCellWidget</a>()的文档。<p>如果不使用QTableItem,需要重写本函数:参见<a href="qtable.html#notes-on-large-tables">关于大表格的注意事项</a>。<h3 class=fn>bool <a name="isColumnReadOnly"></a>QTable::isColumnReadOnly ( int col ) const</h3>返回列<em>col</em>是否只读。<p>该列的某个单元格是可编辑还是只读,取决于该单元格的EditType和这个设置:参见<a href="qtableitem.html#wheneditable">QTableItem::EditType</a>。<p> <p>也参见<a href="#setColumnReadOnly">setColumnReadOnly</a>()和<a href="#isRowReadOnly">isRowReadOnly</a>()。<h3 class=fn>bool <a name="isColumnSelected"></a>QTable::isColumnSelected ( int col, bool full = FALSE ) const</h3><p>如果列<em>col</em>被选中,返回TRUE;否则返回FALSE。<p>如果<em>full</em>为FALSE(缺省的情况),“列被选中”意味着该列的至少一个单元格被选中;如果<em>full</em>为TRUE,“列被选中”则意味着该列所有的单元格都被选中。<p> <p>也参见<a href="#isRowSelected">isRowSelected</a>()和<a href="#isSelected">isSelected</a>()。<h3 class=fn>bool <a name="isColumnStretchable"></a>QTable::isColumnStretchable ( int col ) const<tt> [slot]</tt></h3>如果列<em>col</em>可伸缩,返回TRUE;否则返回FALSE。<p> <p>也参见<a href="#setColumnStretchable">setColumnStretchable</a>()和<a href="#isRowStretchable">isRowStretchable</a>()。<h3 class=fn>bool <a name="isEditing"></a>QTable::isEditing () const<tt> [protected]</tt></h3>如果EditMode为<a href="#EditMode-enum">Editing</a>或者<a href="#EditMode-enum">Replacing</a>,返回TRUE。如果EditMode为<a href="#EditMode-enum">NotEditing</a>返回FALSE。<p> <p>也参见<a href="#EditMode-enum">QTable::EditMode</a>。<h3 class=fn>bool <a name="isReadOnly"></a>QTable::isReadOnly () const</h3><p>如果表格只读,返回TRUE;否则返回FALSE。详情参见<a href="qtable.html#readOnly-prop">"readOnly"</a>属性。<h3 class=fn>bool <a name="isRowReadOnly"></a>QTable::isRowReadOnly ( int row ) const</h3>返回行<em>row</em>是否只读。<p>该行的某个单元格是可编辑还是只读,取决于该单元格的EditType和这个设置:参见<a href="qtableitem.html#wheneditable">QTableItem::EditType</a>。<p> <p>也参见<a href="#setRowReadOnly">setRowReadOnly</a>()和<a href="#isColumnReadOnly">isColumnReadOnly</a>()。<h3 class=fn>bool <a name="isRowSelected"></a>QTable::isRowSelected ( int row, bool full = FALSE ) const</h3><p>如果行<em>row</em>被选中,返回TRUE;否则返回FALSE。<p>如果<em>full</em>为FALSE(缺省的情况),“行被选中”意味着该行的至少一个单元格被选中;如果<em>full</em>为TRUE,“行被选中”则意味着该行所有的单元格都被选中。<p> <p>也参见<a href="#isColumnSelected">isColumnSelected</a>()和<a href="#isSelected">isSelected</a>()。<h3 class=fn>bool <a name="isRowStretchable"></a>QTable::isRowStretchable ( int row ) const<tt> [slot]</tt></h3>如果行<em>row</em>可伸缩,返回TRUE;否则返回FALSE。<p> <p>也参见<a href="#setRowStretchable">setRowStretchable</a>()和<a href="#isColumnStretchable">isColumnStretchable</a>()。<h3 class=fn>bool <a name="isSelected"></a>QTable::isSelected ( int row, int col ) const</h3>如果<em>row</em>、<em>col</em>处的单元格被选中,返回TRUE;否则返回FALSE。<p> <p>也参见<a href="#isRowSelected">isRowSelected</a>()和<a href="#isColumnSelected">isColumnSelected</a>()。<h3 class=fn><a href="qtableitem.html">QTableItem</a> * <a name="item"></a>QTable::item ( int row, int col ) const<tt> [virtual]</tt></h3>返回<a href="qtableitem.html">QTableItem</a>,它代表着在<em>row</em>、<em>col</em>处的单元格的内容。<p>如果<em>row</em>或者<em>col</em>超出范围,或者该单元格没有设置内容,<a href="#item">item</a>()返回0。<p>如果不使用QTableItem,需要重写本函数:参见<a href="qtable.html#notes-on-large-tables">关于大表格的注意事项</a>。<p> <p>也参见<a href="#setItem">setItem</a>()。<h3 class=fn>int <a name="numCols"></a>QTable::numCols () const<tt> [virtual]</tt></h3><p>返回表格中的列数。详情参见<a href="qtable.html#numCols-prop">"numCols"</a>属性。<p>在<a href="qdatatable.html#numCols">QDataTable</a>处被重新实现。<h3 class=fn>int <a name="numRows"></a>QTable::numRows () const<tt> [virtual]</tt></h3><p>返回表格中的行数。详情参见<a href="qtable.html#numRows-prop">"numRows"</a>属性。<p>在<a href="qdatatable.html#numRows">QDataTable</a>处被重新实现。<h3 class=fn>int <a name="numSelections"></a>QTable::numSelections () const</h3>返回当前选中区域的数目。<p> <p>也参见<a href="#currentSelection">currentSelection</a>()。<h3 class=fn>void <a name="paintCell"></a>QTable::paintCell ( <a href="qpainter.html">QPainter</a> * p, int row, int col, const <a href="qrect.html">QRect</a> & cr, bool selected, const <a href="qcolorgroup.html">QColorGroup</a> & cg )<tt> [virtual]</tt></h3>在画具<em>p</em>上绘制在<em>row</em>、<em>col</em>处的单元格。该画具已经被转变为单元格原有的。<em>cr</em>描述了在内容坐标系统中单元格的坐标。<p>如果<em>selected</em>为TRUE,单元格将高亮显示。<p><em>cg</em>是应用来绘制该单元格内容的颜色组。<p>如果你想绘制定制的单元格内容,例如右对齐的文本,你必须要么重写<a href="#paintCell">paintCell</a>(),要么写<a href="qtableitem.html">QTableItem</a>的子类并且重写<a href="qtableitem.html#paint">QTableItem::paint</a>()以完成定制绘制。<p>如果你想使用QTableItem的子类,例如用来保存数据结构,那么重写QTableItem::paint()也许最合适。对于你要立即绘制的数据,例如从数据库中得到的数据,则可能最好是重写paintCell()。注意,如果你重写paintCell(),也就是说不使用QTableItems,你就必须重写其他一些函数:参见<a href="qtable.html#notes-on-large-tables">关于大表格的注意事项</a>。<p>注意,缺省情况下为提高效率,画具并没有裁剪。如果你需要裁剪,使用如下代码:<p> <pre> p->setClipRect( <a href="#cellRect">cellRect</a>(row, col), QPainter::CoordPainter ); //... your drawing code p->setClipping( FALSE ); </pre><h3 class=fn>void <a name="paintCell-2"></a>QTable::paintCell ( <a href="qpainter.html">QPainter</a> * p, int row, int col, const <a href="qrect.html">QRect</a> & cr, bool selected )<tt> [virtual]</tt></h3>这是一个重载的成员函数,为便利而提供。其行为本质上类似上一个函数。<p>使用另外的那个<a href="#paintCell">paintCell</a>()函数。本函数只是为了反向兼容性。<h3 class=fn>void <a name="paintEmptyArea"></a>QTable::paintEmptyArea ( <a href="qpainter.html">QPainter</a> * p, int cx, int cy, int cw, int ch )<tt> [virtual protected]</tt></h3>本函数以画具<em>p</em>的背景色,填充从<em>cx</em>、<em>cy</em>位置开始的,宽<em>cw</em>象素,高<em>ch</em>象素的矩形。<p> <a href="#paintEmptyArea">paintEmptyArea</a>()被<a href="#drawContents">drawContents</a>()调用,以擦除或者填充未用区域。<h3 class=fn>void <a name="paintFocus"></a>QTable::paintFocus ( <a href="qpainter.html">QPainter</a> * p, const <a href="qrect.html">QRect</a> & cr )<tt> [virtual]</tt></h3>绘制当前单元格的焦点矩形(参见<a href="#currentRow">currentRow</a>()、<a href="#currentColumn">currentColumn</a>())。<p>画具<em>p</em>已经被转变为单元格原有的,<em>cr</em>则指定了以内容坐标形式的单元格几何特性。<h3 class=fn><a href="qpixmap.html">QPixmap</a> <a name="pixmap"></a>QTable::pixmap ( int row, int col ) const<tt> [virtual]</tt></h3>返回为在<em>row</em>、<em>col</em>处的单元格设置的象素映射,如果该单元格不含象素映射,返回无效象素映射(null-pixmap)。<p> <p>也参见<a href="#setPixmap">setPixmap</a>()。<p>例子:<a href="tutorial2-08.html#x2522">chart/setdataform.cpp</a>。<h3 class=fn>void <a name="pressed"></a>QTable::pressed ( int row, int col, int button, const <a href="qpoint.html">QPoint</a> & mousePos )<tt> [signal]</tt></h3> <p>当鼠标按键<em>button</em>被按下时,本信号被发送。事件发生所在的单元格在<em>row</em>、<em>col</em>,鼠标位置在<em>mousePos</em>结构里。<h3 class=fn>void <a name="removeColumn"></a>QTable::removeColumn ( int col )<tt> [virtual slot]</tt></h3>删去列<em>col</em>,并且删除其所有单元格,包括单元格中可能有的任何表项和部件。<p> <p>也参见<a href="#removeColumns">removeColumns</a>()、<a href="#hideColumn">hideColumn</a>()、<a href="#insertColumns">insertColumns</a>()和<a href="#removeRow">removeRow</a>()。<h3 class=fn>void <a name="removeColumns"></a>QTable::removeColumns ( const <a href="qmemarray.html">QMemArray</a><int> & cols )<tt> [virtual slot]</tt></h3>删去数组<em>cols</em>中的列,并且删除其所有单元格,包括单元格中可能有的任何表项和部件。<p>传入的数组必须只包含合法的列(在0到<a href="#numCols">numCols</a>() - 1的范围内),没有重复,按升序排列。<p> <p>也参见<a href="#removeColumn">removeColumn</a>()、<a href="#insertColumns">insertColumns</a>()和<a href="#removeRows">removeRows</a>()。<h3 class=fn>void <a name="removeRow"></a>QTable::removeRow ( int row )<tt> [virtual slot]</tt></h3>删去行<em>row</em>,并且删除其所有单元格,包括单元格中可能有的任何表项和部件。<p> <p>也参见<a href="#hideRow">hideRow</a>()、<a href="#insertRows">insertRows</a>()、<a href="#removeColumn">removeColumn</a>()和<a href="#removeRows">removeRows</a>()。<h3 class=fn>void <a name="removeRows"></a>QTable::removeRows ( const <a href="qmemarray.html">QMemArray</a><int> & rows )<tt> [virtual slot]</tt></h3>删去数组<em>rows</em>中的行,并且删除其所有单元格,包括单元格中可能有的任何表项和部件。<p>传入的数组必
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -