用PyQt5開發桌面端資料庫管理工具

2021-10-02 10:41:45 字數 2088 閱讀 1447

ui部分由主要三個面板組成

資料操作面板:操作表中的具體資料

連線配置面板:配置資料庫連線引數

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()

未完待續

PyQt5之SQLite資料庫操作(1)

導入庫檔案 from pyqt5 import qtsql from pyqt5.qtsql import qsqlquery qtsql類即qt中的qsqldatabase類,用於處理與資料庫的連線 qsqlquery類提供了執行和操作sql語句打方法 第一步連線sqlite資料庫 databas...

PyQt5之SQLite資料庫操作(1)

導入庫檔案 from pyqt5 import qtsql from pyqt5.qtsql import qsqlquery qtsql類即qt中的qsqldatabase類,用於處理與資料庫的連線 qsqlquery類提供了執行和操作sql語句打方法 第一步連線sqlite資料庫 databas...

pyqt5資料庫使用詳細教程 打包解決方案

關於pyinstaller打包生成exe的方法 安裝pip pyinstaller 在pycharm 的terminal視窗中輸入 pyinstaller f w main.py 注 輸入引數的含義 f 表示生成單個可執行檔案 w 表示去掉xdghwpp控制台視窗,這在gui介面時非常有用。不過如果...