在子窗口小部件(qt)上拦截mousePressEvent

在子窗口小部件(qt)上拦截mousePressEvent,qt,qtgui,Qt,Qtgui,我正在尝试基于QPlainTextEdit实现以下功能-默认情况下,它会显示一条“请在此处输入内容”消息,单击后,它将消失并允许编辑 为此,我需要截取小部件是否已被单击。我可以在不将QplaintExtendit细分的情况下执行此操作吗 父控件onMousePressEvent能否获取事件所属的子控件 我可以在不将QplaintExtendit细分的情况下执行此操作吗 是的,您可以实现一个事件过滤器: 基本上,您可以过滤掉用于纯文本编辑的鼠标事件。每当过滤器遇到鼠标按下事件时,可以清除纯文本编

我正在尝试基于QPlainTextEdit实现以下功能-默认情况下,它会显示一条“请在此处输入内容”消息,单击后,它将消失并允许编辑

为此,我需要截取小部件是否已被单击。我可以在不将QplaintExtendit细分的情况下执行此操作吗

父控件onMousePressEvent能否获取事件所属的子控件

我可以在不将QplaintExtendit细分的情况下执行此操作吗

是的,您可以实现一个事件过滤器:

基本上,您可以过滤掉用于纯文本编辑的鼠标事件。每当过滤器遇到鼠标按下事件时,可以清除纯文本编辑的内容

父控件onMousePressEvent能否获取哪个子控件 这件事属于谁

没有事件过滤是不行的。Qt的事件传播系统首先将事件发送到子部件,然后仅在子部件不接受事件时发送到父部件