pyqt最小化

# -*- coding: cp936 -*-

#!/usr/bin/env python

# -*- coding:utf-8 -*-

from PyQt4 import QtCore, QtGui

class Window(QtGui.QMainWindow):

def __init__(self):

super(Window, self).__init__()

self.setWindowTitle(u"托盘")

icon = QtGui.QIcon("images/diamond.ico")

self.setWindowIcon(icon)

self.isTopLevel()

self.trayIcon = QtGui.QSystemTrayIcon(self)

self.trayIcon.setIcon(icon)

self.trayIcon.show()

self.trayIcon.activated.connect(self.trayClick) #点击托盘

self.trayIcon.setToolTip(u"托盘小程序") #托盘信息

self.Menu() #右键菜单

def Menu(self):

self.minimizeAction = QtGui.QAction(u"最小化", self,triggered=self.hide)

self.maximizeAction = QtGui.QAction(u"最大化",self,triggered=self.showMaximized)

self.restoreAction = QtGui.QAction(u"还原", self,triggered=self.showNormal)

self.quitAction = QtGui.QAction(u"退出", self,triggered=QtGui.qApp.quit)

self.trayIconMenu = QtGui.QMenu(self)

self.trayIconMenu.addAction(self.minimizeAction)

self.trayIconMenu.addAction(self.maximizeAction)

self.trayIconMenu.addAction(self.restoreAction)

self.trayIconMenu.addSeparator() #间隔线

self.trayIconMenu.addAction(self.quitAction)

self.trayIcon.setContextMenu(self.trayIconMenu) #右击托盘

def closeEvent(self, event):

if self.trayIcon.isVisible():

self.hide()

event.ignore()

def trayClick(self,reason):

if reason==QtGui.QSystemTrayIcon.DoubleClick: #双击

self.showNormal()

elif reason==QtGui.QSystemTrayIcon.MiddleClick: #中击

self.showMessage()

else:

pass

def showMessage(self):

icon=QtGui.QSystemTrayIcon.Information

self.trayIcon.showMessage(u"提示信息",u"点我干嘛?",icon)

if __name__ == ‘__main__‘:

import sys

app = QtGui.QApplication(sys.argv)

frm = Window()

frm.show()

sys.exit(app.exec_())

时间: 2024-08-27 01:36:00

pyqt最小化的相关文章

pyqt最小化学习

# -*- coding: cp936 -*- #!/usr/bin/env python # -*- coding:utf-8 -*- from PyQt4 import QtCore, QtGui class Window(QtGui.QMainWindow): def __init__(self): super(Window, self).__init__() self.setWindowTitle(u"托盘") icon = QtGui.QIcon("images/d

第13条:使类和成员的可访问性最小化

区别设计良好的模块和设计不好的模块,最重要的因素在于,这个模块对于外部的其他模块而言,是否隐藏其内部数据和其他实现细节.设计良好的模块会隐藏所有的实现细节,把它的API于它的实现清晰地隔离开来.然后,模块之间通过它们的API进行通信,一个模块不需要知道其他模块的内部工作情况,这个概念称为信息隐藏或封装.使类和成员的可访问性最小化可以有效的解除系统中各个模块的耦合度.实现每个模块的独立开发.使得系统更加的可维护,更加的健壮.对于顶层的(非嵌套的)类和接口,只有两种可能的访问级别,包级私有的和公有的

Linux的最小化安装

在安装Linux操作系统时,应遵循最小化安装的原则,即不需要或不确定是否需要的包就不安装,这是一个良好的习惯.最小化安装可以在一定程度上为系统瘦身,但更为重要的一点就是它可以提高系统安全性.本文以CentOS6.6为例,来说明最小化安装Linux操作系统的步骤.在CentOS6.6包选择界面之前的安装过程就不再赘述了,直接进入包选择界面,见以下截图: 在安装完成后,如果发现部分包组没有被选择(当然也可能系统并不是你安装的),可以使用yum groupinstall “Desktop” “X wi

自定义窗体的最大化,最小化,关闭功能

namespace 自定义窗体的最大化_最小化和关闭按钮 { partial class Form1 { /// <summary> /// 必需的设计器变量. /// </summary> private System.ComponentModel.IContainer components = null; /// <summary> /// 清理所有正在使用的资源. /// </summary> /// <param name="disp

Arch Linux最小化安装X

Xorg Xorg-server 安装xorg-server pacman -S xorg-server 可选:xorg-server-utils pacman -S xorg-server-utils Xorg-server-utils meta-package pulls in the most useful packages for certain configuration tasks, they are pointed out in the relevant sections. Dri

Arch Linux最小化安装LXDE桌面环境

安装最小化的LXDE桌面环境: pacman -S lxde-common 安装LXDE Session: pacman -S lxsession 不安装这个没法登录进桌面环境 安装LXDE面板: pacman -S lxpanel 不安装这个,进入LXDE桌面环境后什么都没有 安装窗口管理器: pacman -S openbox 不安装这个,既不能移动窗口,也不能最大.最小化窗口 安装LXDE环境下的终端程序: pacman -S lxterminal 安装LXDE环境下的文件管理器: pac

CentOS 6.2最小化安装后再安装图形界面

在安装CentOS 6.2时发现它没有提示我要怎么安装,而是"自作主张"地给我选择了最小化安装,结果装完之后只有终端界面,因为有时候不得不用图形界面,所以如果没有图形界面也是很麻烦的. 后来通过百度才知道为什么它不让我选了,因为我用的是虚拟机,由于物理机本身配置就不高,所以我就没给虚拟机分配太多内存,而CentOS 6.2会根据你分配的内存大小决定安装方式,具体的界定我也忘记了,好像是512M还是1G,不过没关系,我们可以自己来安装图形界面,下面来说一下怎么安装. 1.yum -y g

手把手教你搭建SpringMVC——最小化配置

为什么需要Spring MVC 最开始接触网页的时候,是纯的html/css页面,那个时候还是用Dreamweaver来绘制页面. 随着网站开发的深入,开始学习servlet开发,记得最痛苦的就是servlet返回网页的内容是字符串拼接的html页面,整不好就无法显示.... 再到后来开学学习SSH,庞大的架构眼花缭乱.Struts繁杂的标签.hibernate搞不清楚的数据表,Spring不知道哪里搞错的bean. 最后随着发展,前端开始占有一席之地,nodejs风生水起,很多业务逻辑开始前置

第45条:将局部变量的作用域最小化

将局部变量的作用域最小化,可以增强个代码的可读性和可维护性,并降低出错的可能性. 方法: 1.在第一次使用它的地方声明.如果变量在使用之前声明,对于试图理解程序功能的读者来说,多了一个分散注意力的因素,等到用到该变量的时候,可能已经记不起变量的类型或者初始值了. 2.几乎每个局部变量的声明都应该包含一个初始化表达式.如果还没有足够的信息对一个变量进行有意义的初始化,就应该推迟这个声明,直到可以初始化为止.例外,try-catch语句,如果一个变量被一个方法初始化,而这个方法有可能抛出一个受检异常