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

軟件基本功能入口


軟件選擇 Main 后點擊創(chuàng)建按鈕可進入窗體設計頁面,此方式看似便捷,實則效率不高。這或許是軟件設計流程存在缺陷,比如在數(shù)據(jù)讀取或頁面轉換時可能會卡頓。像我曾在 X 公司做項目時,使用類似功能,每次進入都需等好幾秒,這就是在浪費時間成本。從另一角度講,若這種效率問題不改善,使用該軟件進行大規(guī)?;蛐⌒晚椖慷伎赡軐е逻M程嚴重滯后。


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

要實現(xiàn)第一個桌面程序,我們需要在其中添加組件,比如添加一個按鈕以及一個 Hello World 文本框。這是基本的操作步驟。但是,如果在添加過程中出現(xiàn)對齊或定位方面的問題,對于新手用戶而言,他們就會不知道該怎么辦。我曾經(jīng)教過一個新手學習這種操作,他因為按鈕和文本框無法很好地排列,而花費了很長時間去進行調(diào)整,主要原因是軟件缺少有效的布局提示。
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) # 創(chuàng)建應用程序?qū)嵗? MainWindow = QMainWindow() # 創(chuàng)建主窗口實例 ui = PMain.Ui_MainWindow() # 創(chuàng)建剛剛設計的 Main 窗口實例 ui.setupUi(MainWindow) # 將 PMain 窗體與 MainWindow 合并 MainWindow.show() sys.exit(app.exec_()) # 執(zhí)行退出命令
而且在命令運行結束后會生成 PMain.py 文件,其中的代碼展示是我們需要留意的地方。對于經(jīng)驗豐富的程序員而言,他們能夠迅速從代碼中找到有用的信息,然而新手可能會對此感到困惑不解,這就體現(xiàn)出軟件的新手引導是非常有必要的。

組件屬性與方法調(diào)用

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

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

特殊組件的功能特點

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

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

默認樣式與修改

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

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

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

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

標簽:
本文鏈接:http://m.373753.com/xinwendongtai/1540.html
版權聲明:站內(nèi)所有文章皆來自網(wǎng)絡轉載,只供模板演示使用,并無任何其它意義!