qt creator 中的"提升为..."功能简介

时间:2023-03-09 09:28:20
qt creator 中的"提升为..."功能简介

1.新建一个项目

qt creator 中的"提升为..."功能简介

2.打开文件:mainwindow.ui ->拖一个 tree widget 控件到画布->右击弹出对话框->单击"提升为..."选项

qt creator 中的"提升为..."功能简介

3.输入 MyTree->点击"添加"按钮

qt creator 中的"提升为..."功能简介

4.点击"提升"按钮

qt creator 中的"提升为..."功能简介

5.新建继承自 QTreeWidget 类的新类 MyTree

qt creator 中的"提升为..."功能简介

6.文件结构:

qt creator 中的"提升为..."功能简介

7.文件内容:

 // mytree.h
#ifndef MYTREE_H
#define MYTREE_H #include <QTreeWidget> class MyTree : public QTreeWidget
{
public:
MyTree(QWidget *parent=);
void test();
}; #endif // MYTREE_H
// mytree.cpp
#include "mytree.h" #include <QMessageBox> MyTree::MyTree(QWidget *parent):
QTreeWidget(parent)
{ }
void MyTree::test(){
QMessageBox::warning(, "test", "test");
}
#include "mainwindow.h"
#include "ui_mainwindow.h" MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
ui->treeWidget->test();
} MainWindow::~MainWindow()
{
delete ui;
}

8.ui_mainwindow.h 中的代码变成了 new MyTree, 这样可以深度封装 tree 类, 无需类型转换

// ui_mainwindow.h
treeWidget = new MyTree(centralWidget);