python+pyqt实现右下角弹出框

本文实例为大家分享了pyqt实现右下角弹出框的具体代码,供大家参考,具体内容如下

构造函数中:

self.desktop=QDesktopWidget()
self.move((self.desktop.availableGeometry().width()-self.width()),self.desktop.availableGeometry().height()) #初始化位置到右下角
self.showAnimation()
#弹出动画
def showAnimation(self):
  #显示弹出框动画
  self.animation=QPropertyAnimation(self,"pos")
  self.animation.setDuration(1000)
  self.animation.setStartValue(QPoint(self.x(),self.y()))
  self.animation.setEndValue(QPoint((self.desktop.availableGeometry().width()-self.width()),(self.desktop.availableGeometry().height()-self.height()+self.SHADOW_WIDTH)))
  self.animation.start() 

  #设置弹出框1秒弹出,然后渐隐
  self.remainTimer=QTimer()
  self.connect(self.remainTimer,SIGNAL("timeout()"),self,SLOT("closeAnimation()"))
  self.remainTimer.start(10000) #定时器10秒
#关闭动画
@pyqtSlot()
def closeAnimation(self):
  #清除Timer和信号槽
  self.remainTimer.stop()
  self.disconnect(self.remainTimer,SIGNAL("timeout()"),self,SLOT("closeAnimation()"))
  self.remainTimer.deleteLater()
  self.remainTimer=None
  #弹出框渐隐
  self.animation =QPropertyAnimation(self,"windowOpacity")
  self.animation.setDuration(1000)
  self.animation.setStartValue(1)
  self.animation.setEndValue(0)
  self.animation.start()
  #动画完成后清理
  self.connect(self.animation,SIGNAL("finished()"),self,SLOT("clearAll()")) 

#清理及退出
@pyqtSlot()
def clearAll(self):
  self.disconnect(self.animation,SIGNAL("finished()"),self,SLOT("clearAll()"))
  sys.exit()    #退出 

或者直接: self.connect(self.animation,SIGNAL("finished()"),self,SLOT("close()"))

效果如下:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • python+pyqt实现右下角弹出框

    本文实例为大家分享了pyqt实现右下角弹出框的具体代码,供大家参考,具体内容如下 构造函数中: self.desktop=QDesktopWidget() self.move((self.desktop.availableGeometry().width()-self.width()),self.desktop.availableGeometry().height()) #初始化位置到右下角 self.showAnimation() #弹出动画 def showAnimation(self):

  • Python利用Selenium实现弹出框的处理

    目录 JavaScript三种弹出对话框的简单介绍 alert() - 警告框 confirm() - 确认框 cprompt() - 提示框 selenium 处理弹出对话框的常用方法 selenium 处理 alert() 弹窗 selenium 处理 confirm() 弹窗 selenium 处理 prompt() 弹窗 现如今经常出现在网页上的基于 JavaScript 实现的弹出框有三种,分别是 alert.confirm.prompt .该章节主要是学习如何利用 selenium

  • 右下角弹出信息(自动关闭)

    右下角弹出框 #rbbox{position:absolute;right:0;bottom:0;width:300px;height:0px;overflow:hidden} .button{display:inline;float:right;font-size:12px;cursor:pointer} 关闭 window.onload=function(){showBox();setTimeout("closeBox()",5000)} function showBox(o){

  • 右下角弹出窗口效果代码

    右下角弹出框 #rbbox{position:absolute;right:0;bottom:0;width:300px;height:0px;overflow:hidden} .button{display:inline;float:right;font-size:12px;cursor:pointer} 关闭 window.onload=function(){showBox();setTimeout("closeBox()",5000)} function showBox(o){

  • js右下角弹出提示框示例代码

    本文实例讲解了网页右下角弹出广告信息框实例代码,分享给大家供大家参考,具体内容如下 效果图: 具体代码: <!DOCTYPE html> <html> <head> <meta charset="gb2312"> <title>网页右下角的信息框</title> </head> <style type="text/css"> #winpop { width:200px;

  • python selenium 弹出框处理的实现

    弹出框有两种:页面弹出框(可定位元素能操作).Windows弹出框(不能直接定位) 一.页面弹出框 等待弹出框出现之后,定位弹出框,操作其中元素 如: driver = webdriver.Chrome() driver.get("https://www.baidu.com") driver.maximize_window() #点击百度登录按钮 driver.find_element_by_xpath('//*[@id="u1"]//a[@name="t

  • angularjs创建弹出框实现拖动效果

    本文实例介绍了angularjs创建弹出框实现拖动效果的相关代码,项目中需要将angular-ui-bootstrap中用到的弹出框,使之可拖动,分享给大家供大家参考,具体内容如下 运行效果图: 由于源文件中没有实现,需要自己实现指令,以下即为该指令,亲测可以实现. .directive('draggable', ['$document', function($document) { return function(scope, element, attr) { var startX = 0,

  • iOS 10拨打系统电话弹出框延迟出现问题的解决

    前言 最近在开发中遇到了一些问题,发现iOS 10拨打系统电话发现弹出框会延迟2s左右出现,很不爽,研究了一下,发现是openURL在iOS 10及其之后会阻塞主线程 所以,拨打电话前,做个判断,下面话不多说了,来一起看看详细的介绍吧. 示例代码: // 拨打电话 + (void)callPhone:(NSString *)phoneNum { if ([ISNULL(phoneNum) length] == 0) { [SVProgressHUD showErrorWithStatus:@"拨

  • 让JavaScript的Alert弹出框失效的方法禁止弹出警告框

    本文将介绍让JavaScript的Alert弹出框失效的方法,也就是禁止让JS弹出警告框. 因为现在都提倡绿色上网环境,弹出框难免会影响你的心情,所以通过以下代码可将Js弹出框屏蔽掉. <script LANGUAGE="JavaScript"> <!-- window.alert = function(str){ return ; } alert("不能弹出警示框");//--> </script> 实现思路是对"al

  • Bootstrap实现提示框和弹出框效果

    首先讲一讲提示框(Tooltip) 的使用方法 样式文件: LESS版本:对应源文件 tooltips.less <style id="jsbin-css"> body { padding: 100px; } .btn { margin: 20px 10px 20px; } </style> </head> <body> <h3>按钮做的提示框</h3> <button type="button&q

随机推荐