PySide教程:一個簡單的點擊按鈕示例

作者: meegoq.com  來源: MeeGo中文論壇-米趣網  發布時間: 2011-01-31 12:57  閱讀: 3433 次  推薦: 0   原文鏈接   [收藏]  

  在這篇文章里,我們將為你展示如何使用PySide使用信號、槽機制。基本來說,這是Qt提供給你的允許一個圖形控件與其他圖形控件或者python代碼進行通訊的特性。

  我們將要創建一個應用,你點擊應用中的按鈕后將在Python終端里顯示"Hello World"字樣。

  下面讓我們引入必要的Qt類以及python sys類。

 
import sys
from PySide.QtCore import *
from PySide.QtGui import *

  同時,創建一個python函數,只是用來向終端寫入"Hello World"

 
# Greetings
def sayHello():
print "Hello World!"

  現在,就像在PySide教程:第一個PySide應用 里提到的,你必須在運行PySide代碼前先創建QApplication。輸入以下代碼

 
# Create the Qt Application
app = QApplication(sys.argv)

  讓我們創建可以點擊的按鈕,QPushButton。我們傳給構造函數一個python字符串,顯示在按鈕之上。

 
# Create a button
button = QPushButton("Click me")

  在顯示按鈕之前,我們必須把按鈕和之前定義的函數sayHello()連起來。目前來說,有兩種方法可以達到這個效果 -- 一種舊方式,一種新方式。新方式更符合python的風格(pythonic)。我們在這里使用新方式。你現在可以在 PySide中的信號和槽 找到更多信息。

  QPushButton已經預定義了一個名為clicked的信號,每次按鈕按下后都會發射這個信號。我們現在將它和函數sayHello()連接起來。

 
# Connect the button to the function
button.clicked.connect(sayHello)

最終,我們顯示這個按鈕,并進入Qt主循環。

 
# Show the button
button.show()
# Run the main Qt loop
app.exec_()

  每次你點擊按鈕,你都能在終端里看到"Hello World"字樣。

完整代碼:

 

代碼
 
#!/usr/bin/python
# -*- coding: utf-8 -*-

import sys
from PySide.QtCore import *
from PySide.QtGui import *

def sayHello():
print "Hello World!"

# Create the Qt Application
app = QApplication(sys.argv)
# Create a button, connect it and show it
button = QPushButton("Click me")
button.clicked.connect(sayHello)
button.show()

# Run the main Qt loop
app.exec_()
 

 

0
0
 
標簽:PySide
 
 

文章列表

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 大師兄 的頭像
    大師兄

    IT工程師數位筆記本

    大師兄 發表在 痞客邦 留言(0) 人氣()