python - DeprecationWarning:移动应用程序时的功能(删除标题栏)-PySide6
问题描述
我在移动应用程序时收到此警告:
C:\Qt\Login_Test\main.py:48: DeprecationWarning: Function: 'globalPos() const' is marked as deprecated, please check the documentation for more information.
self.dragPos = event.globalPos()
C:\Qt\Login_Test\main.py:43: DeprecationWarning: Function: 'globalPos() const' is marked as deprecated, please check the documentation for more information.
self.move(self.pos() + event.globalPos() - self.dragPos)
C:\Qt\Login_Test\main.py:44: DeprecationWarning: Function: 'globalPos() const' is marked as deprecated, please check the documentation for more information.
self.dragPos = event.globalPos()
我使用了这段代码:
self.remove_title()
self.ui.appname_label.mouseMoveEvent = self.move_window
def remove_title(self):
self.setWindowFlag(QtCore.Qt.FramelessWindowHint)
self.setAttribute(QtCore.Qt.WA_TranslucentBackground)
self.shadow = QGraphicsDropShadowEffect(self)
self.shadow.setBlurRadius(20)
self.shadow.setXOffset(0)
self.shadow.setYOffset(0)
self.shadow.setColor(QColor(0, 0, 0, 250))
self.ui.frame.setGraphicsEffect(self.shadow)
def move_window(self, event):
if event.buttons() == Qt.LeftButton:
self.move(self.pos() + event.globalPos() - self.dragPos)
self.dragPos = event.globalPos()
event.accept()
def mousePressEvent(self, event):
self.dragPos = event.globalPos()
有没有办法跳过这个警告?它有效,但这个警告很烦人。
解决方案
这对我有用:
p = event.globalPosition()
globalPos = p.toPoint()
例如,您可以这样使用:
def mousePressEvent(self, event):
p = event.globalPosition()
globalPos = p.toPoint()
self.dragPos = globalPos
推荐阅读
- python-3.x - 在python中将十进制转换为二进制的问题
- r - group_by operation in dplyr vs data.table for fast implementation
- javascript - 从对象解析 Google 表格中的数据
- python - Select top n elements from list of lists in Python
- python - 使用 PEX 时无法引用本地 WSDL 文件
- java - 在 Java 中引入一个数组来存储分数
- visual-studio-code - 在模式中设置语言类型 - vs 代码语言扩展
- regex - 正则表达式匹配,但连字符的行尾单词除外
- c++ - 将 x86 更改为 x64 会影响我的 LNK1168 错误
- c++ - 我正在开发一个 C++ 应用程序来将二进制数转换为十进制数