python的按钮控件_python实现360皮肤按钮控件示例
代码如下:
#!/usr/bin/python
#-*-coding:utf-8-*-
from PyQt4.QtGui import *
from PyQt4.QtCore import *
from PyQt4.Qt import *
class ChangeSkinWidget(QWidget):
def __init__(self,parent = None):
super(ChangeSkinWidget,self).__init__(parent)
self.setFixedSize(140, 160)
self.mouse_press = False
self.mouse_enter = False
#self.pixmap = QPixmap()
self.pixmap_name = ""
self.skin_label = QLabel() #显示皮肤
self.skin_name_label = QLabel() #显示皮肤名称
self.download_count_label = QLabel() #显示下载次数
self.use_skin_button = QPushButton() #使用此皮肤按钮
self.setCursor(Qt.PointingHandCursor)
self.use_skin_button.setStyleSheet("border-radius:3px border:1px solid rgb(180, 190, 200) color:rgb(70, 70, 70) background:transparent")
self.skin_label.setScaledContents(True)
self.skin_label.setFixedSize(100, 65)
self.use_skin_button.setFixedSize(85, 25)
self.background_layout = QVBoxLayout()
self.background_layout.addWidget(self.skin_label, 0, Qt.AlignCenter)
self.background_layout.addWidget(self.skin_name_label, 0, Qt.AlignCenter)
self.background_layout.addWidget(self.download_count_label, 0, Qt.AlignCenter)
self.background_layout.addWidget(self.use_skin_button, 0, Qt.AlignCenter)
self.background_layout.setSpacing(5)
self.background_layout.setContentsMargins(0, 10, 0, 10)
self.setLayout(self.background_layout)
self.skin.connect(self.changeSkin)
self.translateLanguage()
skin = pyqtSignal()
def changeSkin(self, pixmap_name, skin_name, download_count):
self.background_name = pixmap_name + "_big.png"
self.pixmap_name = self.background_name
#更改皮肤背景
#self.pixmap()
self.skin_label.setPixmap(QPixmap(self.background_name))
#更改皮肤名称
self.skin_name_label.setText(skin_name)
#更改下载次数
self.download_count_label.setText(u"download count:" + download_count)
def translateLanguage(self):
self.use_skin_button.setText(u"use skin")
def paintEvent(self,event):
if(self.mouse_enter):
#绘制边框
painter = QPainter(self)
pen = QPen(QColor(210, 225, 230))
painter.setPen(pen)
painter.drawRoundRect(0,0,self.width()-1, self.height()-1, 5, 5)
def mousePressEvent(self,event):
#只能是鼠标左键移动和改变大小
if(event.button() == Qt.LeftButton):
self.mouse_press = True
self.emit(SIGNAL("skin"),self.pixmap_name)
def mouseReleaseEvent(self,event):
self.mouse_press = False
def enterEvent(self,event):
self.mouse_enter = True
self.update()
def leaveEvent(self,event):
self.mouse_enter = False
self.update()
if __name__ == '__main__':
import sys
app = QApplication(sys.argv)
skin = ChangeSkinWidget()
skin.show()
sys.exit(app.exec_())
本条技术文章来源于互联网,如果无意侵犯您的权益请点击此处反馈版权投诉
本文系统来源:php中文网
python的按钮控件_python实现360皮肤按钮控件示例相关推荐
- python 按钮控件_python实现360皮肤按钮控件示例
python实现360皮肤按钮控件示例. 代码: #!/usr/bin/python #-*-coding:utf-8-*- #site www.jbxue.com from PyQt4.QtGui ...
- python 按钮控件_python实现360皮肤按钮控件实例
复制代码 代码如下: #!/usr/bin/python #-*-coding:utf-8-*- from PyQt4.QtGui import * from PyQt4.QtCore import ...
- python如何调整按钮的位置_Python tkinter布局与按钮间距设置方式
Python tkinter布局与按钮间距设置方式 新建label与button,并设置位置(grid) import tkinter as tk root = tk.Tk() label = tk. ...
- python简单目标检测代码_Python Opencv实现单目标检测的示例代码
一 简介 目标检测即为在图像中找到自己感兴趣的部分,将其分割出来进行下一步操作,可避免背景的干扰.以下介绍几种基于opencv的单目标检测算法,算法总体思想先尽量将目标区域的像素值全置为1,背景区域全 ...
- python合并excel文件关键字_python合并多个excel文件的示例
工作中经常遇到要将十几个Excel(不管是xls.或者是CSV)合并到同一个文件中去,手工一个一个复制是不可能的,此时就轮到Python出马了 主要是利用for循环,读取每一个文件,作为df,然后再通 ...
- python通过cookie绕过验证码_Python Selenium Cookie 绕过验证码实现登录示例代码
之前介绍过通过cookie 绕过验证码实现登录的方法.这里并不多余,会增加分析和另外一种方法实现登录. 1.思路介绍 1.1.直接看代码,内有详细注释说明 # FileName : Wm_Cookie ...
- python用二分法求平方根_Python使用二分法求平方根的简单示例
对python这个高级语言感兴趣的小伙伴,下面一起跟随编程之家 jb51.cc的小编两巴掌来看看吧! 使用二分法(Bisection Method)求平方根. # @param 使用二分法(Bisec ...
- python函数调用的一般形式_Python的函数的定义与使用示例
Python培训分享函数的定义与使用示例,结合实例形式分析了Python函数的定义.参数.变量作用域.返回值等相关概念与使用技巧. Python定义函数使用def关键字,一般格式如下: def 函数名 ...
- python爬取歌曲评论_python 爬取歌曲评论的简单示例
这篇文章主要为大家详细介绍了python 爬取歌曲评论的简单示例,具有一定的参考价值,可以用来参考一下. 感兴趣python 爬取歌曲评论的简单示例的小伙伴,下面一起跟随512笔记的小编罗X来看看吧. ...
最新文章
- java停车管理系统中期检查_java毕业设计_springboot框架的停车场收费管理系统
- 微型计算机系统没有的总线是( ),微型计算机系统总线(1).ppt
- pidgin qq_Pidgin入门指南,通用消息客户端
- 容器服kubernetes_Kubernetes,标准化和安全性主导2017年Linux容器新闻
- 对不起,AI觉得你有虐童倾向,求职失败
- 斯坦福大学CS143编译原理课程笔记:1.编译器与解释器简介
- 韩媒:开城韩商访朝申请或最晚25日出结果
- 远程桌面连接服务器显示内部错误,解决远程桌面连接出现了内部错误
- 洛谷每日三题之第六天
- 任何矩阵都能变换成梯形阵的证明
- qq邮箱登录收件服务器是什么,你好请问qq邮箱收件服务器不能为空是什么意思...
- Diligent宣布2021年现代治理100强公司名单
- 零信任架构:下一代网络安全架构?
- python2.7 get-pip.py总是网络超时
- 几个不太常用,需要记录一下的Excel经验
- PADS-VX入门到精通实战项目讲解(上)—LOGIC部分-覃小刚-专题视频课程
- 实战项目之基于flask的及时聊天系统
- 00007__点阵字体(位图)和TrueType字体
- addEventListener兼容ie低版本
- 从零开始学架构——单服务器高性能模式
热门文章
- 如何将csv包含的数据导入SAP Cloud Platform HANA MDC里
- SAP UI5 Web Component React应用如何在Component之间跳转
- S/4HANA Product master OData
- some screenshot of Fiori cloud launchpad
- Cloud for Customer的工作中心(work center)加载源代码
- One order deletion tool
- No Authorization to generate extension field
- Touch the AppCache manifest file
- 016. Remove me test
- SAP Cloud for Customer里图片数据读取的逻辑