Files
python_tools/updata/float_lable.py
andy 2660834312 updata.py 后台下载服务器文件
updata 文件列表添加右键菜单,查看文件详情
2023-10-29 09:19:11 +08:00

49 lines
1.5 KiB
Python

from PyQt5.QtCore import *
from PyQt5.QtGui import *
from PyQt5.QtWidgets import *
import sys
class floatBox(QWidget):
def __init__(self,parent:QWidget=None,items:list=None,x:int=0,y:int=0):
QWidget.__init__(self,parent)
self.setMouseTracking(True)
self.setWindowFlags(Qt.WindowType.FramelessWindowHint|Qt.WindowType.NoDropShadowWindowHint|Qt.WindowType.Popup)
# self.setWindowFlags(Qt.WindowType.FramelessWindowHint|Qt.WindowType.Popup)
self.setAttribute(Qt.WidgetAttribute.WA_DeleteOnClose)
# self.setBackgroundRole()
self.setStyleSheet ("background-color: rgb(245, 180, 245);")
y_size=self._add_items(items)
x_size=500
desk=QApplication.desktop()
if(y+y_size>desk.height()):
y=desk.height()-y_size
if(x+x_size>desk.width()):
x=desk.width()-x_size
self.setGeometry(QRect(x, y, x_size, y_size))
def _add_items(self,items:list):
if(items is None):
items=["没有要显示的提示"]
for i in range(len(items)):
lable=QLabel(self)
lable.setText(items[i])
lable.setGeometry(QRect(5,5+i*25,500,25))
return len(items)*25+10
if __name__ == "__main__":
app = QApplication(sys.argv)
widget = QWidget()
widget.resize(870, 410)
widget.setAttribute(Qt.WidgetAttribute.WA_DeleteOnClose)
label=floatBox(items=["aaaaaa","bbbbbbbb","cccccccc"])
widget.destroyed.connect(label.close)
widget.show()
label.show()
a=app.exec()