发布于 2014-10-22 06:15:39 | 877 次阅读 | 评论: 0 | 来源: 网友投递
这里有新鲜出炉的精品教程,程序狗速度看过来!
PyQt python GUI工具包
PyQt是一个创建GUI应用程序的工具包。它是Python编程语言和Qt库的成功融合。Qt库是目前最强大的库之一。PyQt是由Phil Thompson 开发。 PyQt实现了一个Python模块集。它有超过300类,将近6000个函数和方法。
本文是一个pyqt4实现半透明的天气预报界面示例,需要的朋友可以参考下
PyQt是一个创建GUI应用程序的工具包。它是Python编程语言和Qt库的成功融合。Qt库是目前最强大的库之一。PyQt是由Phil Thompson 开发。 PyQt实现了一个Python模块集。它有超过300类,将近6000个函数和方法。
# -*- coding: cp936 -*-
import sys
import urllib2
import json
from PyQt4 import QtCore, QtGui
class MyWindow( QtGui.QLCDNumber,QtGui.QWidget):
def __init__(self, parent=None):
super(MyWindow,self).__init__(parent)
self.setWindowTitle("weather")
self.resize(100,40)
self.setNumDigits(0)
self.setWindowFlags(QtCore.Qt.FramelessWindowHint)
self.setWindowOpacity(0.5)
url ='http://m.weather.com.cn/data/101090502.html'
re = urllib2.urlopen(url).read()
we = json.loads(re)['weatherinfo']
label1 = QtGui.QLabel( we['city'] )
label2 = QtGui.QLabel( we['date'] )
label3 = QtGui.QLabel( we['week'] )
label4 = QtGui.QLabel( we['temp1'])
label5 = QtGui.QLabel( we['weather1'] )
#---------添加表格布局
gridLayout = QtGui.QGridLayout()
gridLayout.addWidget( label1 , 0, 0 )
gridLayout.addWidget( label2 , 0, 1 )
gridLayout.addWidget( label3 , 0, 2 )
gridLayout.addWidget( label4 , 0, 3 )
gridLayout.addWidget( label5 , 0, 4 )
self.setLayout( gridLayout )
def mousePressEvent(self,event):
if event.button()==QtCore.Qt.LeftButton:
self.dragPosition=event.globalPos()-self.frameGeometry().topLeft()
event.accept()
if event.button()==QtCore.Qt.RightButton:
self.close()
def mouseMoveEvent(self,event):
if event.buttons() & QtCore.Qt.LeftButton:
self.move(event.globalPos()-self.dragPosition)
event.accept()
app = QtGui.QApplication( sys.argv )
demo = MyWindow()
demo.show()
app.exec_()