用PyQt5开发桌面端数据库管理工具
发布日期:2022-03-03 10:44:09 浏览次数:9 分类:技术文章

本文共 2002 字,大约阅读时间需要 6 分钟。

UI部分由主要三个面板组成

  1. 数据操作面板:操作表中的具体数据
  2. 连接配置面板:配置数据库连接参数
  3. SQL转换面板:自动翻译SQL

 

主要使用PyQt5的以下组件开发

QWidget, QVBoxLayout, QHBoxLayout, QTextEdit, QStackedWidget, QPushButton, QLabel, QMenuBar, QAction, QStatusBar, QTableWidgetItem, QTreeWidget, QTreeWidgetItem, QMessageBox, QLineEdit, QComboBox, QIcon, QFont, QColor

展示UI部分代码

class Ui_MainWindow(object):    def __init__(self):        self.dbHandler = MyDBHandler()        self.field_name_lst = None        self.former_table_data = None    def setup_UI(self, MainWindow):        self.former_table_data = []        self.currentTableData = []        self.changedTableData = []        # UI MainWindow        MainWindow.setObjectName("MainWindow")        MainWindow.resize(800, 600)        # center widgets        self.mainWidget = QWidget(MainWindow)        self.mainWidget.setFont(QFont("Roman times", 10.5))  ##设置字体        self.mainWidget.setObjectName("mainWidget")        MainWindow.setCentralWidget(self.mainWidget)        self.centerLayout = QVBoxLayout(self.mainWidget)        # 设置stacked widget        self.stackedWidget = QStackedWidget(self.mainWidget)        self.centerLayout.addWidget(self.stackedWidget)        # 设置data page        self.build_data_page()        # layout不同的比例区分大小        self.data_page_layout.setStretchFactor(self.dataPanel, 4)        self.data_page_layout.setStretchFactor(self.treePanel, 1)        # 设置login面板        self.build_login_page()        # 将三个面板,加入stackedWidget        self.stackedWidget.addWidget(self.data_page)        self.stackedWidget.addWidget(self.login_page)        # menu        self.build_menu_bar(MainWindow)        # status bar        self.statusbar = QStatusBar(MainWindow)        self.statusbar.setObjectName("hard working")        MainWindow.setStatusBar(self.statusbar)        # 刷新        self.retranslateUi(MainWindow)        QMetaObject.connectSlotsByName(MainWindow)        # refresh tree list        self.dbHandler.config(None, None, None, None)        self.paint_tree()

 

展示运行演示视频

 

工具操作演示视频前半部分

 

工具操作演示视频后半部分

 

未完待续

 

转载地址:https://blog.csdn.net/yangjiegang8/article/details/104114880 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:类的加载生命周期
下一篇:基于C++简易JSON解析器

发表评论

最新留言

路过按个爪印,很不错,赞一个!
[***.219.124.196]2024年04月19日 02时06分54秒