-----------android培训、java培训、java学习型技术博客、期待与您交流!------------
一.QTableWidget Design Framework
1.QTableWidget->QTableView->QAbstractItemView->QAbstractScorllArea->QFrame->QWidget->QObject
2.QWidget:
QMenuBar *menuBar;
QToolBar *mainToolBar;
QWidget *centralWidget;
QStatusBar *statusBar;
3.对于只在头文件中声明类,没有实现(New出来的)只需在头文件中,在构造新的类的开头,Class声明一下即可
class QTableWidget ;
class QTableWidgetItem ;
4.派生类的继承:采用单继承的方式,对于图形界面的设计只能在Qt中的Ui可视化界面和自己纯手工代码编写的界面选取一个,不要相互参合。
class TableWidget : public QMainWindow
5.对于文件中的公有变量,在函数之间需要相互传递的,需进行声明变量,
QString openName ;
QT_NAMESPACE::QString getOpenName() const { return openName; }
void setOpenName(QT_NAMESPACE::QString val) { openName = val; }
6.在构造函数中,构造程序初始界面,如:菜单里,工具栏,主窗口,状态栏,
//初始化界面
void creatActions() ;
void creatMenus() ;
void creatToolBar();
void creatStatusBar();
void initalTableWidget();
void clearTableWidget() ;
virtual void contextMenuEvent ( QContextMenuEvent * event );
7.对各个功能键设置信号和槽机制,
//建立信号和槽机制
void connetSlot();
private slots:
void onTriggerded();
void updateLocation( QTableWidgetItem *item ,QTableWidgetItem*);
8.对中文字体的设置
QTextCodec ::setCodecForTr(QTextCodec ::codecForName("GBK")); 在主函数中设置 或者gb2312编码
mainToolBar->setObjectName(QString::fromUtf8("mainToolBar")); utf8国际化编码
objectName.setWindowTitle(QString :: fromStdWString(L"我的制表窗口"));
9.剪切,复制,粘贴,清除:
剪切就是在当前没有数据时,直接返回。如果当前有数据,先用容器记住数据,然后清除当前数据。(也就是先复制后清除的功能组合)
void TableWidget::actCutFunction()
{