《Rapid GUI Programming with Python and Qt》讀書筆記

#一些嘮叨html

搜索pyqt資料的時候發現了這本《Rapid GUI Programming with Python and Qt》,試讀了一下以爲很是適合我這種徹底初次接觸qt與pyqt的新手,儘管是英文讀物,可是不算太難理解,讀起來仍是津津有味的。python

本人的英語不算很強,讀英文讀物仍是比較吃力的,基本上靠手翻+機翻來讀英文讀物的,讀書速度不會很快,再加上最近事情比較多,不能保證快速閱讀了,該博客小記一下讀這本書的部分收穫。api

這本書我直接從第二部分——Part II: Basic GUI Programming開始閱讀的,前面幾章都是python基礎,python的基礎我看過很多,直接跳過了,本讀書筆記直接從第四章開始記錄。app

#Part II: Basic GUI Programming佈局

##4. Introduction to GUI Programmingcode

###本章要點小結orm

  • 每一個Pyqt應用程序必須有一個QApplication對象,app = QApplication(sys.argv),使用exec_()方法啓動主窗體循環,app.exec_()
  • Pyqt中,全部的控件均可以用做「頂級窗口」,pyqt會自動分配一個窗體樣式來容納該控件。不想要外部窗口時,使用setWindowFlags(Qt.SplashScreen)方法,如label.setWindowFlags(Qt.SplashScreen)
  • Form類的*init()方法能夠傳遞一個parent參數,用於指定父容器,當parentNone*的時候說明該容器爲頂級窗口,

###本章接觸到的控件/類/方法htm

  • QApplication #pyqt應用程序必需要有的對象
  • QTime.currentTime() #獲取當前時間
    • 用法示例:
try:
    due = QTime.currentTime()
    message = "Alert!"
    if len(sys.argv) < 2:
        raise ValueError
    hours, mins = sys.argv[1].split(":")
    due = QTime(int(hours), int(mins))
    if not due.isValid():
        raise ValueError
    if len(sys.argv) > 2:
        message = " ".join(sys.argv[2:])
except ValueError:
    message = "Usage: alert.pyw HH:MM [optional message]" # 24hr clock
  • QLabel #文字控件,支持html格式文字
    • 用法示例:
label = QLabel("<font color=red size=72><b>" + message + "</b></font>")
label.setWindowFlags(Qt.SplashScreen)
  • QTextBrowser #只讀的多行文本框
  • QLineEdit #單行文本框,可輸入
  • QVBoxLayout #pyqt佈局管理器
相關文章
相關標籤/搜索