pyqt5 制作壁纸切换工具实例 第一章
pyqt5 制作壁纸切换工具实例 第二章 https://blog.csdn.net/mtl1994/article/details/118152403
文章目录
- 前言
- 效果图
- 一、代码
- 1.结构
- 总结
前言
效果图
一、代码
1.结构
wallpaper----resource--------icon------------icon.png----src--------frame------------main.py------------ui_mainwindow.py----main.py
frame/main.py MainWidget __init__ 1.初始化frame/ui_mainwindows.py 2.初始化系统托盘 3.给系统托盘设置点击方法frame/ui_mainwindow.py Ui_MainWindow setupUi 1.布局 retranslateUi 1.赋值main.py 1.主函数启动类
frame/main.py
# -*- coding: utf-8 -*-
import os
import sys
from PyQt5.QtGui import QIcon
from PyQt5.QtWidgets import QMainWindow, QSystemTrayIconfrom src.frame.ui_mainwindow import Ui_MainWindowclass MainWidget(Ui_MainWindow, QMainWindow):def __init__(self, parent=None):self.icon_path = os.path.join(sys.path[1], 'resource/icon/icon.png')super(MainWidget, self).__init__(parent)self.setupUi(self)self.show_flag = Falseself.setWindowTitle("壁纸")self.setWindowIcon(QIcon(self.icon_path))self.Ui_MainWindow = Ui_MainWindow#系统托盘self.trayIcon = QSystemTrayIcon(self)self.trayIcon.setIcon(QIcon(self.icon_path))self.trayIcon.setToolTip("壁纸")self.trayIcon.show()self.trayIcon.activated.connect(self.tray_click)#设置在系统托盘上方显示tg = self.trayIcon.geometry()self.setGeometry(tg.x()-452/2,tg.y()-802,452, 802)def tray_click(self, reason):if reason in [1,3]:if self.show_flag:self.hide()else:self.show()self.show_flag = not self.show_flag
frame/ui_mainwindow.py
# -*- coding: utf-8 -*-
from PyQt5 import QtCore
from PyQt5.QtWidgets import QMainWindow, QHBoxLayout, QLabel, QWidget, QGridLayoutclass Ui_MainWindow(QMainWindow):def setupUi(self,MainWindow):self.resize(452, 802)MainWindow.setWindowFlags(QtCore.Qt.SubWindow|QtCore.Qt.FramelessWindowHint)self.title = QLabel(self)self.retranslateUi()self.center_widget = QWidget()self.hbox = QHBoxLayout()self.label = QLabel("1",self)self.label2 = QLabel("2",self)self.label3 = QLabel("3",self)self.hbox.addWidget(self.label)self.hbox.addWidget(self.label2)self.hbox.addWidget(self.label3)self.center_widget.setLayout(self.hbox)self.bottom_widget = QWidget()# 创建窗口主部件self.main_widget = QWidget()# 创建主部件的网格布局self.main_layout = QGridLayout()# 设置窗口主部件布局为网格布局self.main_widget.setLayout(self.main_layout)# 左侧部件在第0行第0列,占12行5列self.main_layout.addWidget(self.title, 0, 0, 1, 12, QtCore.Qt.AlignCenter)self.main_layout.addWidget(self.center_widget,1,0,1,12)# 右侧部件在第0行第6列,占12行7列self.main_layout.addWidget(self.bottom_widget, 2, 0, 12, 8)# 设置窗口主部件MainWindow.setCentralWidget(self.main_widget)def retranslateUi(self):_translate = QtCore.QCoreApplication.translateself.title.setText(_translate("MainWindow", "壁纸"))
main.py
#!/usr/bin/python3
# -*- coding: utf-8 -*-
import sys
import tracebackfrom PyQt5.QtWidgets import QApplicationfrom frame.main import MainWidgetif __name__ == '__main__':try:app = QApplication(sys.argv)QApplication.setQuitOnLastWindowClosed(False) # 关闭最后一个窗口不退出程序window = MainWidget()# window.show()sys.exit(app.exec_())except Exception as e:traceback.print_exc()
总结
pyqt5 制作壁纸切换工具实例 第一章相关推荐
- pyqt5 制作壁纸切换工具实例 第二章
pyqt5 制作壁纸切换工具实例 第一章 https://blog.csdn.net/mtl1994/article/details/118020546 提示:写完文章后,目录可以自动生成,如何生成可 ...
- 前端H5怎么切换语言_第一章 产品经理必懂的前端技术- 上
产品经理为什么要懂一些前端技术? 当前端H5工程师说CSS时,你是否知道他在表达什么? 当andriod工程师说这个文本要用TextView时,你是否明白TextView是什么? 当ios工程师说这个 ...
- pyqt5 制作的串口工具
串口工具私人版 工作中涉及无线通信芯片模组的测试,所以串口工具用的比较多.但是因为之前用的网上找的串口工具更新后串口工具历史记录被阉割了,还要钱~白嫖党的我不能忍,于是自己仿造了一个用于自己测试. 一 ...
- Python爬虫+PyQt5制作mp3下载工具
实际效果如下图所示: 源代码有四个文件,分别是kugou.ui.kugou_ui.py.my_spider.py.main.py. kugou.ui: <?xml version="1 ...
- wxFormBuilder + wxPython 工具开发第二章-日记本工具数据连接与展示
目录 前言 一.代码目录层级 二.数据库 三.数据表设计 四.展示数据 前言 上一章节已经介绍了如何将程序主窗口设计好生成python代码,运行成功的展示了窗体. 上一章内容地址: wxFormBui ...
- 《零成本实现Web自动化测试--基于Selenium》第一章 自动化测试基础
第一篇 Selenium 和WebDriver工具篇 第一章 自动化测试基础 1.1 初识自动化测试 自动化测试有两种常见方式 1.1.1 代码驱动测试,又叫测试驱动开发(TDD) 1.1.2 ...
- 《Abaqus GUI程序开发指南(Python语言)》——第一章 概述1.1 简单插件实例——创建带孔板有限元模型...
本节书摘来自异步社区<Abaqus GUI程序开发指南(Python语言)>一书中的第1章,第1.1节,作者: 贾利勇 , 富琛阳子 , 贺高 , 周正光 更多章节内容可以访问云栖社区&q ...
- 【笔记】Cocos2d-x高级开发教程:制作自己的捕鱼达人 笔记一:序_前言_第一章
[笔记]Cocos2d-x高级开发教程:制作自己的<捕鱼达人> 笔记一:序_前言_第一章 转载请注明出处:http://blog.csdn.net/l_badluck/article/de ...
- 编写高性能 .NET 代码 第一章:工具介绍 -- Performance Counters(性能计数器)
Performance Counters(性能计数器) 性能计数器是监视应用程序和系统性能的最简单的方法之一.它有几十个类别数百个计数器在,包括一些.net特有的计数器.要访问这些可以通过系统自带的 ...
最新文章
- ubuntu 内存占用解析
- nyist -- 组队赛(一)
- python中文字体下载_python中matlabplot和seaborn中文字体显示的一种解决方案
- 【js】event(事件对象)详解
- 计算机系统硬件类(Computer System Hardware Classes)
- Python之Numpy操作基础
- 小记tensorflow-1:tf.nn.conv2d 函数介绍
- spring jdbcTemplate查询使用
- potainer 日志_分享10个优秀的日志分析工具
- Presto Facebook 开源的大数据查询引擎
- 【HTML5】input标签中的Require必填项
- 计算机考研人工智能选什么方向,我想报人工智能方向的研究生,应该选取什么专业?...
- Container及其内部进程监控剖析
- rknn模型转换问题记录
- REDSHIFT学习笔记-渲染设置3_GIPhotonSSS
- IE中点击链接下载EXCEL文件直接以乱码方式打开解决
- (一)验证微信公众平台
- C 语言取整的几种方法
- 我为什么要禁止回复,以及呵呵呵呵呵
- 好书推荐-腾讯方法:一个市值1500亿美元公司的产品真经