• 4305阅读
  • 7回复

关于Rectangle点击的一个问题~~谢谢 [复制链接]

上一主题 下一主题
离线seanyxie
 

只看楼主 倒序阅读 楼主  发表于: 2014-07-29



问一个问题

问个问题,如这个图所示,白色的是主窗口,里面首先有个A Rectangle,可以点击,然后动态创建了一个B Rectangle,B本身不可点击,但是B里面有个C Rectangle可以点击,如果我想点击B和A重叠的 区域(不是C区域),为什么A会被点击响应啊? 是因为B不能点击,被透传下去了


如果设置了B可以点击,那么再去点击C时候,发现C也不能点击了

如果在有B的时候,A不会被点击中,要怎么办啊?
我奔向太阳,在日落前必将找到你。
欢迎光临Qt技术博客 http://www.seanyxie.com
离线彩阳

只看该作者 1楼 发表于: 2014-07-29
在B中设置一个占位的MouseArea,啥也不做,就是吞噬下层的MouseEvent。

Rectangle
{
  id: b
  ……
  MouseArea
  {
    id: dummyMouseArea
    anchors.fill: parent
  }
}
上海Qt开发联盟,热忱地欢迎你的加入!
离线seanyxie

只看该作者 2楼 发表于: 2014-07-29
但是这样会导致C也无法点击啊,点击了没反应
C是在B中得
我奔向太阳,在日落前必将找到你。
欢迎光临Qt技术博客 http://www.seanyxie.com
离线seanyxie

只看该作者 3楼 发表于: 2014-07-29
回 彩阳 的帖子
彩阳:在B中设置一个占位的MouseArea,啥也不做,就是吞噬下层的MouseEvent。
Rectangle
{
  id: b
....... (2014-07-29 20:36) 

但是这样会导致C也无法点击啊,点击了没反应
C是在B中的
我奔向太阳,在日落前必将找到你。
欢迎光临Qt技术博客 http://www.seanyxie.com
离线彩阳

只看该作者 4楼 发表于: 2014-07-30
C中再嵌套一个MouseArea。
上海Qt开发联盟,热忱地欢迎你的加入!
离线seanyxie

只看该作者 5楼 发表于: 2014-07-30
回 彩阳 的帖子
彩阳:C中再嵌套一个MouseArea。 (2014-07-30 07:05) 

C中本来就有一个MouseArea,在B中放一个站位的MouseArea会导致C点击不了

很简单一个测试代码可以试试
我奔向太阳,在日落前必将找到你。
欢迎光临Qt技术博客 http://www.seanyxie.com
离线彩阳

只看该作者 6楼 发表于: 2014-07-30
测试点击 TestClick.7z (2 K) 下载次数:3
是我没有理解你的问题还是其他原因,我这边好好的,我把代码上传你看看。
上海Qt开发联盟,热忱地欢迎你的加入!
离线seanyxie

只看该作者 7楼 发表于: 2014-07-30
搞明白了,我把B的MouseArea放到了C的上面。。所以C不能被点击
我奔向太阳,在日落前必将找到你。
欢迎光临Qt技术博客 http://www.seanyxie.com
快速回复
限100 字节
 
上一个 下一个