PyQt5 實現(xiàn)字體大小自適應分辨率的方法
最近遇到一個現(xiàn)象,將做好的軟件放在更高分辨率的電腦上運行,會導致字體顯示不完全,出現(xiàn)被控件遮擋的情況。具體原因可以上網(wǎng)查詢,在這里將記錄下解決方法。
這里記錄兩種方法,如果使用的Qt版本在5.6.0之后,可以支持High_DPI,應用設置該屬性即可;如果不支持,可以為應用設置自適應字體。
if __name__ == "__main__":
v_compare = QVersionNumber(5,6,0)
v_current,_ = QVersionNumber.fromString(QT_VERSION_STR) #獲取當前Qt版本
if QVersionNumber.compare(v_current,v_compare) >=0 :
QApplication.setAttribute(Qt.AA_EnableHighDpiScaling) #Qt從5.6.0開始,支持High-DPI
app = QApplication(sys.argv) #
else:
app = QApplication(sys.argv)
font = QFont("宋體")
pointsize = font.pointSize()
font.setPixelSize(pointsize*90/72)
app.setFont(font)
mymainwin = Mymainwindow()
mymainwin.show()
sys.exit(app.exec())
注意:QApplication.setAttribute(Qt.AA_EnableHighDpiScaling) 是在創(chuàng)建QApplication項目之前。
以上這篇PyQt5 實現(xiàn)字體大小自適應分辨率的方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
Python實現(xiàn)將Excel轉(zhuǎn)換成為image的方法
今天小編就為大家分享一篇Python實現(xiàn)將Excel轉(zhuǎn)換成為image的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-10-10
Python3 socket即時通訊腳本實現(xiàn)代碼實例(threading多線程)
這篇文章主要介紹了Python3 socket即時通訊腳本實現(xiàn)代碼實例(threading多線程),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2020-06-06
Python3正則表達式之:(?(id/name)yes-pattern|no-pattern)條件性匹配
(?(id/name)yes-pattern|no-pattern)的作用是對于給出的id或者name,先嘗試去匹配 yes-pattern部分的內(nèi)容,如果id或name條件不滿足,則去匹配no-pattern部分的內(nèi)容2021-10-10

