kindred_1 2021-11-04 16:56 采纳率: 50%
浏览 57
已结题

Pyqt5 中QComboBox控件的currentIndexChanged无法正确重写

想重写currentIndexChanged函数,实现在输出选择的内容时同时输出控件在屏幕上的坐标。但尝试了很久还是没实现。请指点下应怎么搞?

from PyQt5.Qt import *
class banrd_combobox(QComboBox):
   # 如何实现对 brand_comboBox控件桌面坐标的输出?
    pass
class Window(QWidget):
    def __init__(self):
        super().__init__()
        self.setWindowTitle('主页面')
        self.resize(500,500)
        self.setup_ui()
    def setup_ui(self):
        self.product_row_frame = QFrame(self)
        self.product_row_frame.setGeometry(QRect(0, 0, 500, 40))
        self.product_row_frame.setStyleSheet("QWidget:hover{"
                                             "background-color:rgb(0, 202, 202);}")
        self.brand_comboBox = banrd_combobox(self.product_row_frame)
        self.brand_comboBox.setGeometry(QRect(0,0,80,40))
        self.brand_comboBox.addItems(['乔丹','周杰伦','刘翔','泰森'])
        self.brand_comboBox.setCurrentIndex(-1)
        self.brand_comboBox.currentIndexChanged[str].connect(self.brand_comboBox_changed)
    def brand_comboBox_changed(self,x,y,name):
        print('brand_comboBox横坐标:',x)
        print('brand_comboBox纵坐标:',y)
        print(name)
if __name__ == '__main__':
    import sys
    app = QApplication(sys.argv)
    window = Window()

    window.show()

    sys.exit(app.exec_())



  • 写回答

2条回答 默认 最新

  • llc的足迹 2021-11-05 10:45
    关注
    
        def brand_comboBox_changed(self, index):
            print(index)
            print(self.brand_comboBox.geometry())  # 控件相对于主窗口的坐标
            print(self.geometry())  # 主窗口的屏幕坐标
    

    可以利用相对坐标计算出控件的屏幕坐标

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 11月13日
  • 已采纳回答 11月5日
  • 赞助了问题酬金 11月5日
  • 创建了问题 11月4日

悬赏问题

  • ¥15 c语言怎么用printf(“\b \b”)与getch()实现黑框里写入与删除?
  • ¥20 怎么用dlib库的算法识别小麦病虫害
  • ¥15 华为ensp模拟器中S5700交换机在配置过程中老是反复重启
  • ¥15 java写代码遇到问题,求帮助
  • ¥15 uniapp uview http 如何实现统一的请求异常信息提示?
  • ¥15 有了解d3和topogram.js库的吗?有偿请教
  • ¥100 任意维数的K均值聚类
  • ¥15 stamps做sbas-insar,时序沉降图怎么画
  • ¥15 买了个传感器,根据商家发的代码和步骤使用但是代码报错了不会改,有没有人可以看看
  • ¥15 关于#Java#的问题,如何解决?