⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 qtablewidget.h

📁 奇趣公司比较新的qt/emd版本
💻 H
字号:
/******************************************************************************** Copyright (C) 1992-2007 Trolltech ASA. All rights reserved.**** This file is part of the QtGui module of the Qt Toolkit.**** This file may be used under the terms of the GNU General Public** License version 2.0 as published by the Free Software Foundation** and appearing in the file LICENSE.GPL included in the packaging of** this file.  Please review the following information to ensure GNU** General Public Licensing requirements will be met:** http://trolltech.com/products/qt/licenses/licensing/opensource/**** If you are unsure which license is appropriate for your use, please** review the following information:** http://trolltech.com/products/qt/licenses/licensing/licensingoverview** or contact the sales department at sales@trolltech.com.**** In addition, as a special exception, Trolltech gives you certain** additional rights. These rights are described in the Trolltech GPL** Exception version 1.0, which can be found at** http://www.trolltech.com/products/qt/gplexception/ and in the file** GPL_EXCEPTION.txt in this package.**** In addition, as a special exception, Trolltech, as the sole copyright** holder for Qt Designer, grants users of the Qt/Eclipse Integration** plug-in the right for the Qt/Eclipse Integration to link to** functionality provided by Qt Designer and its related libraries.**** Trolltech reserves all rights not expressly granted herein.**** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.******************************************************************************/#ifndef QTABLEWIDGET_H#define QTABLEWIDGET_H#include <QtGui/qtableview.h>#include <QtCore/qvariant.h>#include <QtCore/qvector.h>QT_BEGIN_HEADERQT_MODULE(Gui)#ifndef QT_NO_TABLEWIDGETclass Q_GUI_EXPORT QTableWidgetSelectionRange{public:    QTableWidgetSelectionRange();    QTableWidgetSelectionRange(int top, int left, int bottom, int right);    QTableWidgetSelectionRange(const QTableWidgetSelectionRange &other);    ~QTableWidgetSelectionRange();    inline int topRow() const { return top; }    inline int bottomRow() const { return bottom; }    inline int leftColumn() const { return left; }    inline int rightColumn() const { return right; }    inline int rowCount() const { return bottom - top + 1; }    inline int columnCount() const { return right - left + 1; }private:    int top, left, bottom, right;};class QTableWidget;class QTableModel;class QWidgetItemData;class QTableWidgetItemPrivate;class Q_GUI_EXPORT QTableWidgetItem{    friend class QTableWidget;    friend class QTableModel;public:    enum ItemType { Type = 0, UserType = 1000 };    QTableWidgetItem(int type = Type);    explicit QTableWidgetItem(const QString &text, int type = Type);    explicit QTableWidgetItem(const QIcon &icon, const QString &text, int type = Type);    QTableWidgetItem(const QTableWidgetItem &other);    virtual ~QTableWidgetItem();    virtual QTableWidgetItem *clone() const;    inline QTableWidget *tableWidget() const { return view; }    inline int row() const;    inline int column() const;    inline void setSelected(bool select);    inline bool isSelected() const;    inline Qt::ItemFlags flags() const { return itemFlags; }    void setFlags(Qt::ItemFlags flags);    inline QString text() const        { return data(Qt::DisplayRole).toString(); }    inline void setText(const QString &text);    inline QIcon icon() const        { return qvariant_cast<QIcon>(data(Qt::DecorationRole)); }    inline void setIcon(const QIcon &icon);    inline QString statusTip() const        { return data(Qt::StatusTipRole).toString(); }    inline void setStatusTip(const QString &statusTip);#ifndef QT_NO_TOOLTIP    inline QString toolTip() const        { return data(Qt::ToolTipRole).toString(); }    inline void setToolTip(const QString &toolTip);#endif#ifndef QT_NO_WHATSTHIS    inline QString whatsThis() const        { return data(Qt::WhatsThisRole).toString(); }    inline void setWhatsThis(const QString &whatsThis);#endif    inline QFont font() const        { return qvariant_cast<QFont>(data(Qt::FontRole)); }    inline void setFont(const QFont &font);    inline int textAlignment() const        { return data(Qt::TextAlignmentRole).toInt(); }    inline void setTextAlignment(int alignment)        { setData(Qt::TextAlignmentRole, alignment); }    inline QColor backgroundColor() const        { return qvariant_cast<QColor>(data(Qt::BackgroundColorRole)); }    inline void setBackgroundColor(const QColor &color)        { setData(Qt::BackgroundColorRole, color); }    inline QBrush background() const        { return qvariant_cast<QBrush>(data(Qt::BackgroundRole)); }    inline void setBackground(const QBrush &brush)        { setData(Qt::BackgroundRole, brush); }    inline QColor textColor() const        { return qvariant_cast<QColor>(data(Qt::TextColorRole)); }    inline void setTextColor(const QColor &color)        { setData(Qt::TextColorRole, color); }    inline QBrush foreground() const        { return qvariant_cast<QBrush>(data(Qt::ForegroundRole)); }    inline void setForeground(const QBrush &brush)        { setData(Qt::ForegroundRole, brush); }    inline Qt::CheckState checkState() const        { return static_cast<Qt::CheckState>(data(Qt::CheckStateRole).toInt()); }    inline void setCheckState(Qt::CheckState state)        { setData(Qt::CheckStateRole, state); }    inline QSize sizeHint() const        { return qvariant_cast<QSize>(data(Qt::SizeHintRole)); }    inline void setSizeHint(const QSize &size)        { setData(Qt::SizeHintRole, size); }    virtual QVariant data(int role) const;    virtual void setData(int role, const QVariant &value);    virtual bool operator<(const QTableWidgetItem &other) const;#ifndef QT_NO_DATASTREAM    virtual void read(QDataStream &in);    virtual void write(QDataStream &out) const;#endif    QTableWidgetItem &operator=(const QTableWidgetItem &other);    inline int type() const { return rtti; }private:    int rtti;    QVector<QWidgetItemData> values;    QTableWidget *view;    QTableWidgetItemPrivate *d;    Qt::ItemFlags itemFlags;};inline void QTableWidgetItem::setText(const QString &atext){ setData(Qt::DisplayRole, atext); }inline void QTableWidgetItem::setIcon(const QIcon &aicon){ setData(Qt::DecorationRole, aicon); }inline void QTableWidgetItem::setStatusTip(const QString &astatusTip){ setData(Qt::StatusTipRole, astatusTip); }#ifndef QT_NO_TOOLTIPinline void QTableWidgetItem::setToolTip(const QString &atoolTip){ setData(Qt::ToolTipRole, atoolTip); }#endif#ifndef QT_NO_WHATSTHISinline void QTableWidgetItem::setWhatsThis(const QString &awhatsThis){ setData(Qt::WhatsThisRole, awhatsThis); }#endifinline void QTableWidgetItem::setFont(const QFont &afont){ setData(Qt::FontRole, afont); }#ifndef QT_NO_DATASTREAMQ_GUI_EXPORT QDataStream &operator>>(QDataStream &in, QTableWidgetItem &item);Q_GUI_EXPORT QDataStream &operator<<(QDataStream &out, const QTableWidgetItem &item);#endifclass QTableWidgetPrivate;class Q_GUI_EXPORT QTableWidget : public QTableView{    Q_OBJECT    Q_PROPERTY(int rowCount READ rowCount WRITE setRowCount)    Q_PROPERTY(int columnCount READ columnCount WRITE setColumnCount)    friend class QTableModel;public:    explicit QTableWidget(QWidget *parent = 0);    QTableWidget(int rows, int columns, QWidget *parent = 0);    ~QTableWidget();    void setRowCount(int rows);    int rowCount() const;    void setColumnCount(int columns);    int columnCount() const;    int row(const QTableWidgetItem *item) const;    int column(const QTableWidgetItem *item) const;    QTableWidgetItem *item(int row, int column) const;    void setItem(int row, int column, QTableWidgetItem *item);    QTableWidgetItem *takeItem(int row, int column);    QTableWidgetItem *verticalHeaderItem(int row) const;    void setVerticalHeaderItem(int row, QTableWidgetItem *item);    QTableWidgetItem *takeVerticalHeaderItem(int row);    QTableWidgetItem *horizontalHeaderItem(int column) const;    void setHorizontalHeaderItem(int column, QTableWidgetItem *item);    QTableWidgetItem *takeHorizontalHeaderItem(int column);    void setVerticalHeaderLabels(const QStringList &labels);    void setHorizontalHeaderLabels(const QStringList &labels);    int currentRow() const;    int currentColumn() const;    QTableWidgetItem *currentItem() const;    void setCurrentItem(QTableWidgetItem *item);    void setCurrentCell(int row, int column);    void sortItems(int column, Qt::SortOrder order = Qt::AscendingOrder);    void setSortingEnabled(bool enable);    bool isSortingEnabled() const;    void editItem(QTableWidgetItem *item);    void openPersistentEditor(QTableWidgetItem *item);    void closePersistentEditor(QTableWidgetItem *item);    QWidget *cellWidget(int row, int column) const;    void setCellWidget(int row, int column, QWidget *widget);    inline void removeCellWidget(int row, int column);    bool isItemSelected(const QTableWidgetItem *item) const;    void setItemSelected(const QTableWidgetItem *item, bool select);    void setRangeSelected(const QTableWidgetSelectionRange &range, bool select);    QList<QTableWidgetSelectionRange> selectedRanges() const;    QList<QTableWidgetItem*> selectedItems();    QList<QTableWidgetItem*> findItems(const QString &text, Qt::MatchFlags flags) const;    int visualRow(int logicalRow) const;    int visualColumn(int logicalColumn) const;    QTableWidgetItem *itemAt(const QPoint &p) const;    inline QTableWidgetItem *itemAt(int x, int y) const;    QRect visualItemRect(const QTableWidgetItem *item) const;    const QTableWidgetItem *itemPrototype() const;    void setItemPrototype(const QTableWidgetItem *item);public Q_SLOTS:    void scrollToItem(const QTableWidgetItem *item, QAbstractItemView::ScrollHint hint = EnsureVisible);    void insertRow(int row);    void insertColumn(int column);    void removeRow(int row);    void removeColumn(int column);    void clear();    void clearContents();Q_SIGNALS:    void itemPressed(QTableWidgetItem *item);    void itemClicked(QTableWidgetItem *item);    void itemDoubleClicked(QTableWidgetItem *item);    void itemActivated(QTableWidgetItem *item);    void itemEntered(QTableWidgetItem *item);    void itemChanged(QTableWidgetItem *item);    void currentItemChanged(QTableWidgetItem *current, QTableWidgetItem *previous);    void itemSelectionChanged();    void cellPressed(int row, int column);    void cellClicked(int row, int column);    void cellDoubleClicked(int row, int column);    void cellActivated(int row, int column);    void cellEntered(int row, int column);    void cellChanged(int row, int column);    void currentCellChanged(int currentRow, int currentColumn, int previousRow, int previousColumn);protected:    bool event(QEvent *e);    virtual QStringList mimeTypes() const;    virtual QMimeData *mimeData(const QList<QTableWidgetItem*> items) const;    virtual bool dropMimeData(int row, int column, const QMimeData *data, Qt::DropAction action);    virtual Qt::DropActions supportedDropActions() const;    QList<QTableWidgetItem*> items(const QMimeData *data) const;    QModelIndex indexFromItem(QTableWidgetItem *item) const;    QTableWidgetItem *itemFromIndex(const QModelIndex &index) const;    void dropEvent(QDropEvent *event);private:    void setModel(QAbstractItemModel *model);    Q_DECLARE_PRIVATE(QTableWidget)    Q_DISABLE_COPY(QTableWidget)    Q_PRIVATE_SLOT(d_func(), void _q_emitItemPressed(const QModelIndex &index))    Q_PRIVATE_SLOT(d_func(), void _q_emitItemClicked(const QModelIndex &index))    Q_PRIVATE_SLOT(d_func(), void _q_emitItemDoubleClicked(const QModelIndex &index))    Q_PRIVATE_SLOT(d_func(), void _q_emitItemActivated(const QModelIndex &index))    Q_PRIVATE_SLOT(d_func(), void _q_emitItemEntered(const QModelIndex &index))    Q_PRIVATE_SLOT(d_func(), void _q_emitItemChanged(const QModelIndex &index))    Q_PRIVATE_SLOT(d_func(), void _q_emitCurrentItemChanged(const QModelIndex &previous, const QModelIndex &current))    Q_PRIVATE_SLOT(d_func(), void _q_sort())    Q_PRIVATE_SLOT(d_func(), void _q_dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight))};inline void QTableWidget::removeCellWidget(int arow, int acolumn){ setCellWidget(arow, acolumn, 0); }inline QTableWidgetItem *QTableWidget::itemAt(int ax, int ay) const{ return itemAt(QPoint(ax, ay)); }inline int QTableWidgetItem::row() const{ return (view ? view->row(this) : -1); }inline int QTableWidgetItem::column() const{ return (view ? view->column(this) : -1); }inline void QTableWidgetItem::setSelected(bool aselect){ if (view) view->setItemSelected(this, aselect); }inline bool QTableWidgetItem::isSelected() const{ return (view ? view->isItemSelected(this) : false); }#endif // QT_NO_TABLEWIDGETQT_END_HEADER#endif // QTABLEWIDGET_H

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -