pyqt4教程之实现半透明的天气预报界面示例
pyqt4教程之实现半透明的天气预报界面示例
发布时间:2016-12-28 来源:查字典编辑
摘要:复制代码代码如下:#-*-coding:cp936-*-importsysimporturllib2importjsonfromPyQt4i...

复制代码 代码如下:

# -*- 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_()

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新python学习
热门python学习
脚本专栏子分类