【问题标题】:Combobox selection warns "This implementation does not support subelements"组合框选择警告“此实现不支持子元素”
【发布时间】:2014-06-18 00:13:25
【问题描述】:

在我的触摸屏计算机上,当我使用简单的 Qt 组合框(在 PySide 中)时收到警告:

class MyComBox(QtGui.QWidget):
    def __init__(self):
        QtGui.QWidget.__init__(self)
        comboxText=["Hi", "Bye", "Give me a warning"]
        self.comBox=QtGui.QComboBox(self) 
        self.comBox.addItems(comboxText)
        self.comBox.move(20,40)  
        self.setGeometry(100, 100, 200, 100)
        self.show()   

当我创建一个 GUI 实例时,GUI 看起来与我预期的一样,但是当我按下下拉菜单时,我在 shell 中收到以下警告:

QAccessibleWidget::rect: This implementation does not support subelements! (ID 1 unknown for QWidget)

虽然它有点无害,但我想让它消失,因为每次有人点击组合框时它都会弹出来分散注意力。除了以下相关讨论外,谷歌在该主题上没有取得太多成果: http://www.daz3d.com/forums/viewthread/6773/

我在 Windows 7 和 Python 2.7 上,在 Anaconda 下运行。注意我只在我的戴尔触摸屏笔记本电脑上收到此错误,而不是我的工作台式机(两者都不是触摸屏)。都是 Windows 7,但触摸屏笔记本电脑是从 Windows 8“降级”的 Dell Inspiron 15z。

由于没有人就这个问题跟我吵闹,很明显这对我来说似乎相当本地化。因此,我在 Qt 项目站点 (https://bugreports.qt-project.org/browse/PYSIDE-242) 上将此作为错误报告提交。如果我收到任何回复,我会在这里更新。

【问题讨论】:

  • 您的代码看起来很像普通的、完美的 PySide 使用代码。同样在 CPython 中,您不会收到任何警告。这更有可能是 iPython 的问题。
  • 刚刚在我的触摸屏计算机上尝试过,甚至在我运行代码时从 Windows 命令行中尝试过,我得到了同样的错误。所以这不是 iPython 的错……

标签: qt pyqt pyside touchscreen


【解决方案1】:

http://niftools.sourceforge.net/forum/viewtopic.php?f=24&t=2147 的线程表明这是在某些触控/平板电脑上支持 Qt 可访问性的问题。您能否尝试禁用Control Panel -> Program Features -> Turn Windows Features On or Off 中的Tablet PC Components(或在Vista 中为Tablet PC Optional Components),如上一篇文章中所述,并检查它是否有效。

另外,如果你只是想抑制警告,因为它是无害的,你可以使用QtCore.qInstallMsgHandler()安装你自己的消息处理程序

而且,这更可能是 Qt 问题而不是 PySide 问题。

【讨论】:

  • 它奏效了,感谢您解开这个谜团(或者至少更有用地指出它的可能来源)。奇怪的是,即使禁用了该功能,我的触摸屏功能似乎也能正常工作,所以我不确定究竟是什么被禁用了,也无法在网上找到关于 Tablet PC Components 所做的很好的描述(我刚刚找到了这个最小的非描述性描述:winsupersite.com/article/faqtip/…)。谁有好的描述?
【解决方案2】:

我在 windows8 上遇到了同样的问题。停止服务 TabletInputService 似乎为我修复了它

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-07-24
    • 1970-01-01
    • 1970-01-01
    • 2019-08-15
    • 1970-01-01
    • 1970-01-01
    • 2013-06-28
    • 1970-01-01
    相关资源
    最近更新 更多