默认情况下,如何在应用程序鼠标中选择所有QLabel(Qt :: TextSelectableByMouse)?
这不仅仅是我感兴趣的标签,而且,例如,QInputDialog中使用的标签,QMessageBox中的标签是可选择的,不可选择。
答案 0 :(得分:2)
您可以使用QApplication::topLevelWidgets
查找所有窗口,使用widget->findChildren<QLabel*>()
查找窗口中的所有标签。然后,您可以为每个标签设置适当的标志。您需要定期调用此函数,但不要太频繁(findChildren
可能很慢)。也许您可以连接到QApplication::focusChanged
信号,检测何时创建新的顶级窗口并检查此窗口。