您现在的位置是:主页 > news > 做网站有前景吗/西安seo关键词查询
做网站有前景吗/西安seo关键词查询
admin2025/5/4 14:46:11【news】
简介做网站有前景吗,西安seo关键词查询,做网站阿里云买哪个服务器好点,开发公司前期手续流程博文链接: https://blog.csdn.net/zizle_lin/article/details/106164600 有个评论说在拖拽窗口会导致下拉框崩溃。也给出了例子https://ask.csdn.net/questions/1100233 我试着运行了该例子,只有一种情况会崩溃:在操作下拉框的同时拖拽窗口就…
做网站有前景吗,西安seo关键词查询,做网站阿里云买哪个服务器好点,开发公司前期手续流程博文链接: https://blog.csdn.net/zizle_lin/article/details/106164600
有个评论说在拖拽窗口会导致下拉框崩溃。也给出了例子https://ask.csdn.net/questions/1100233 我试着运行了该例子,只有一种情况会崩溃:在操作下拉框的同时拖拽窗口就…
博文链接: https://blog.csdn.net/zizle_lin/article/details/106164600
有个评论说在拖拽窗口会导致下拉框崩溃。也给出了例子https://ask.csdn.net/questions/1100233
我试着运行了该例子,只有一种情况会崩溃:在操作下拉框的同时拖拽窗口就会使程序崩溃。(如果有别的情况崩溃,望指出!)
个人觉得这类问题应该很少见,不至于在操作下拉框的时候还要拖拽窗口。但非要这么做,我想到个办法,重写QCombobox在操作下拉时禁用拖拽(试了禁止鼠标穿透,没成功.)
稍微修改了例子的代码如下:
# _*_ coding:utf-8 _*_
# @File : question.py
# @Time : 2020-10-21 08:11
# @Author: zizle
from PyQt5.Qt import *
from PyQt5.QtCore import *class Combobox(QComboBox):enter = pyqtSignal()leave = pyqtSignal()def __init__(self, *args, **kwargs):super(Combobox, self).__init__(*args, **kwargs)def enterEvent(self, *args, **kwargs):self.enter.emit()def leaveEvent(self, *args, **kwargs):self.leave.emit()class AboutUsDialog(QDialog):def __init__(self, parent=None):super(AboutUsDialog, self).__init__(parent)self.is_drag = Trueself.setWindowFlags(Qt.FramelessWindowHint | Qt.Dialog)self.setGeometry(120, 0, 200, 120)self.co = Combobox(self)self.co.addItems(["test21","testf"])self.co.enter.connect(self.mouse_enter_co)self.co.leave.connect(self.mouse_leave_co)def mouse_enter_co(self):self.is_drag = Falsedef mouse_leave_co(self):self.is_drag = Truedef mousePressEvent(self, event):if self.is_drag and event.button() == Qt.LeftButton:self.dragPosition = event.globalPos() - self.frameGeometry().topLeft()QApplication.postEvent(self, QEvent(174))event.accept()def mouseMoveEvent(self, event):if self.is_drag and event.buttons() == Qt.LeftButton:self.move(event.globalPos() - self.dragPosition)event.accept()if __name__ == '__main__':import sysapp = QApplication(sys.argv)aboutus = AboutUsDialog()aboutus.show()sys.exit(app.exec_())
如有其它错误和问题,望指出。