• 6969阅读
  • 2回复

[提问]问个QTableView中信号的问题 [复制链接]

上一主题 下一主题
离线weakness_kh
 
只看楼主 倒序阅读 楼主  发表于: 2011-05-10
我用了一个QTableView控件,点击某行时,通过clicked(QModelIndex)激活一个配置按钮,当我的焦点离开QTableView控件时如何监控并将配置按钮设为不可用?
离线米尔利安

只看该作者 1楼 发表于: 2011-05-10
http://www.hicjiajia.cn/?p=226

QT没有提供失去焦点的信号,呵呵,要自己重写了
我们在天上的父,愿人都尊你的名为圣。
愿你的国降临。
愿你的旨意行在地上,如同行在天上。
离线weakness_kh
只看该作者 2楼 发表于: 2011-05-10
谢谢一楼的回答,不过那个不太合适用在QTableView里,是我没把需求表述清楚

不过已找到解决方案:
http://www.qtcn.org/bbs/read.php?tid=22081

python版的如下:
class MySetTable(QtGui.QTableView):
    ClickValidArea = QtCore.pyqtSignal()
    ClickBlankArea = QtCore.pyqtSignal()
    def __init__(self, parent = None):
        super(MySetTable, self).__init__(parent)
    
    def mousePressEvent(self, event):
        xPos = event.x()
        yPos = event.y()
        idx = self.indexAt(QtCore.QPoint(xPos, yPos))
        if idx.isValid():
            self.ClickValidArea.emit()
        else:
            self.ClickBlankArea.emit()
        super(MySetTable, self).mousePressEvent(event)
快速回复
限100 字节
 
上一个 下一个