Changes between Version 16 and Version 17 of wade/QT


Ignore:
Timestamp:
Oct 16, 2011, 3:56:50 PM (13 years ago)
Author:
wade
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • wade/QT

    v16 v17  
    2727    結果:1.0.7
    2828
     29
    2930 4. 第一個 Hello World GUI 程式:
    3031{{{
     
    5152label = QLabel("<font color=red size=40>Hello World</font>")
    5253}}}
     54
    5355
    5456 5. 第二個程式,加入connect與程式連結:
     
    7880sys.exit()
    7981}}}
     82
    8083
    8184 6. 第三個程式:產生一個 dialog 應用程式
     
    107110
    108111
     112 7. 使用 layout 來排列 widgets:
     113{{{
     114#!python
     115#!/usr/bin/python
     116# -*- coding: utf-8 -*-
     117# Import PySide classes
     118import sys
     119from PySide.QtCore import *
     120from PySide.QtGui import *
     121 
     122
     123   
     124class Form(QDialog):
     125    def __init__(self, parent=None):
     126        super(Form, self).__init__(parent)
     127        # 建立  widgets
     128        self.edit = QLineEdit('input your name')
     129        self.button = QPushButton('submit')
     130       
     131        # 建立 layout 並加入上面的  widgets
     132        layout = QVBoxLayout()
     133        layout.addWidget(self.edit)
     134        layout.addWidget(self.button)
     135        # 設定 dialog layout
     136        self.setLayout(layout)
     137        # 設定 dialog 的設明
     138        self.setWindowTitle('My form')
     139       
     140        # 將 button 事件與  say_hellow slot 連結
     141        self.button.clicked.connect(self.say_hellow)
     142       
     143    def say_hellow(self):
     144        print ("Hello %s" % self.edit.text())
     145       
     146       
     147
     148if __name__ == '__main__':
     149    # 建立  QT 應用程式
     150    app = QApplication(sys.argv)
     151    # 建立並顯示 form
     152    form = Form()
     153    form.show()
     154    # 執行主要的 QT loop
     155    sys.exit(app.exec_())
     156
     157}}}
     158
     159
    109160= Reference =
    110161 * http://qt.nokia.com/ 官網。