在如今的數字化時代,軟件工具十分常見。要是有一個軟件宣稱能夠進行窗體設計,然而實際上卻大大降低了效率,那這就成了一個問題。這會讓我們去思索,這個軟件到底是否值得被使用?
pip install pyqt5-tools -i https://pypi.tuna.tsinghua.edu.cn/simple/

軟件基本功能入口


軟件選擇 Main 后點擊創建按鈕可進入窗體設計頁面,此方式看似便捷,實則效率不高。這或許是軟件設計流程存在缺陷,比如在數據讀取或頁面轉換時可能會卡頓。像我曾在 X 公司做項目時,使用類似功能,每次進入都需等好幾秒,這就是在浪費時間成本。從另一角度講,若這種效率問題不改善,使用該軟件進行大規模或小型項目都可能導致進程嚴重滯后。


另外,軟件具備對象查看器、屬性編輯器等常見的功能。這些功能從表面上看是很齊全的,然而還需要看它們在實際操作中的便捷程度。比如,當我在處理一個緊急項目時,屬性編輯器的搜索功能始終無法找到所需的屬性,這著實讓人感到煩惱。
桌面程序的初步實現

要實現第一個桌面程序,我們需要在其中添加組件,比如添加一個按鈕以及一個 Hello World 文本框。這是基本的操作步驟。但是,如果在添加過程中出現對齊或定位方面的問題,對于新手用戶而言,他們就會不知道該怎么辦。我曾經教過一個新手學習這種操作,他因為按鈕和文本框無法很好地排列,而花費了很長時間去進行調整,主要原因是軟件缺少有效的布局提示。
def retranslateUi(self, MainWindow):
_translate = QtCore.QCoreApplication.translate
MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow"))
self.label.setText(_translate("MainWindow", "Hello World"))
self.pushButton.setText(_translate("MainWindow", "第一個按鈕"))import sys from PyQt5.QtWidgets import QApplication,QMainWindow import PMain # 導入剛剛生成的Python 文件 if __name__ == '__main__': app = QApplication(sys.argv) # 創建應用程序實例 MainWindow = QMainWindow() # 創建主窗口實例 ui = PMain.Ui_MainWindow() # 創建剛剛設計的 Main 窗口實例 ui.setupUi(MainWindow) # 將 PMain 窗體與 MainWindow 合并 MainWindow.show() sys.exit(app.exec_()) # 執行退出命令
而且在命令運行結束后會生成 PMain.py 文件,其中的代碼展示是我們需要留意的地方。對于經驗豐富的程序員而言,他們能夠迅速從代碼中找到有用的信息,然而新手可能會對此感到困惑不解,這就體現出軟件的新手引導是非常有必要的。

組件屬性與方法調用

對于組件屬性而言,如果要把.ui 文件轉換為.py 文件,然后通過對象來調用其方法,倘若這個過程不簡便,就會對工作效率產生阻礙。之前在 Y 項目里,由于文件轉換過程容易出錯,所以導致了反復操作,浪費了好幾個小時的時間。

以按鈕這種組件為例,在信號/槽編輯中設置事件時,其 click()等方法的操作路徑是否清晰是很重要的。在 B 公司的一次測試中,有不少測試者反饋不清楚應在何處準確地設置按鈕的單擊事件,這些都是軟件設計需要改進的細節之處。

特殊組件的功能特點

Label 組件具備簡易的外觀設置。然而,倘若相關屬性的命名不夠直觀,就會致使使用者難以對其進行理解。比如依據我的經驗來看,某些不常被使用的屬性,倘若沒有詳細的解釋文檔,即便對于老用戶而言,也很難知曉其用途。

Line Edit 組件能夠設置一些屬性,用于展示用戶提示信息,這對提升用戶體驗有幫助。然而,倘若沒有默認的合理設置,每次都需用戶手動進行調整,這會很麻煩。在某些公益項目中,可能由于這個問題,使得不熟悉軟件的志愿者在制作登錄窗口時,在組件調整上花費過多時間。

默認樣式與修改

這些組件的默認展示風格是英國式的,卻需用戶手動進行更改。在國際化項目里,對于全球各地的用戶而言,若每次都得手動調整像 Date/Time Edit 這類組件的屬性,那是極為繁瑣的。就像我參與的那個國際合作項目,這使得一些國外用戶反饋使用體驗不佳,軟件未及時依據用戶地理位置提供合適的默認設置。
pyuic5 -o PMain.py Main.ui

對于復選框組件的選中狀態設置,操作看似簡單。然而,若在操作過程中沒有提示引導,就有可能引發誤操作。比如,曾在一個線上培訓課程里,許多學員在設置復選框屬性時,將選中狀態弄錯了,出現了選中狀態與預期相反的情況。
def btn_click(self): QtWidgets.QMessageBox.information(self.pushButton_2,"彈窗","彈窗內容")
高級組件的操作要點

Tree View 和 Table View 這兩個組件,在操作時涉及到的拖拽動作以及數據添加動作都需要去熟悉。在一些大型項目中,像企業資源管理系統的開發這樣的項目,這些組件能否正確使用關乎到數據展示和管理的有效性。倘若操作步驟較為復雜并且容易出錯,就會對項目的整體進度產生影響。就如同之前在 Z 公司的項目里,由于 Tree View 組件的數據添加出現錯誤,重新返工耗費了大量額外的人力成本。

讀到這里的朋友們,你們在使用類似軟件進行窗體設計時,有沒有遇到特別讓自己困擾的問題?希望大家能夠多多進行評論互動,要是覺得文章不錯,也請點贊并分享。

標簽:
本文鏈接:http://www.www9463.cn/xinwendongtai/1540.html
版權聲明:站內所有文章皆來自網絡轉載,只供模板演示使用,并無任何其它意義!