《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布局管理器
相关文章
相关标签/搜索