• 5974阅读
  • 3回复

[提问]在QGraphicsScene中使用QComboBox会出现遮挡问题(已解决) [复制链接]

上一主题 下一主题
离线liuxu_lx7
 
只看楼主 倒序阅读 楼主  发表于: 2011-06-08
关键词: 遮挡
遮挡:上面的ComboxBox下拉框会被下面的ComboxBox遮挡。

如果用QWidget的机制,不存在QComboBox之间的遮挡问题
但使用QGraphics机制,存在。

代码:
        for (int i = 0; i < 5; ++i)
    {
        QComboBox* p1 = new QComboBox;
        QGraphicsItem* pitem = m_GraphicScene->addWidget(p1);
        pitem->setPos(0, 30*i);
        p1->addItem(tr("1"));
        p1->addItem(tr("2"));
        p1->addItem(tr("3"));
        p1->addItem(tr("4"));
        p1->addItem(tr("5"));
    }

已经试过了:修改Z值, lower() 都没能解决问题。 不知道问题出在哪里了?为什么会和QWidget有区别?

哪位朋友知道么?
离线dbzhang800

只看该作者 1楼 发表于: 2011-06-08
看起来这是Qt的一个bug,你可以考虑去 http://bugreports.qt.nokia.com/ 提交这个bug。
离线dbzhang800

只看该作者 2楼 发表于: 2011-06-08
刚试了一下:设置ZValue 或 调整插入的顺序都可以解决问题。

测试环境
(K)Ubuntu 11.04  + Qt4.7.2/Qt4.8/Qt5.0
离线liuxu_lx7
只看该作者 3楼 发表于: 2011-06-09
回 2楼(dbzhang800) 的帖子
感谢。

我也又测了一下,修改Z值的方法解决了。(ps: 之前确实测过Z值,或许当时环境搞复杂了,影响了Z排序测试)。
快速回复
限100 字节
 
上一个 下一个