无法使用Qt:WindowStaysOnTopHint标志属性单击QWidget - 仅限Mac问题

时间:2013-07-02 16:51:27

标签: qt

我有一个班级

class LocationLineEdit:public QLineEdit{
private:
QWidget* mpListPop;
MySuggestionList* mpLocationListView;
}

在模式对话框中,其中包含一个弹出列表:

class MySuggestionList:public MyAutoScrollArea {}
class MyAutoScrollArea:public QScrollArea {}

初始化为:

mpListPop=new QWidget(pParent, Qt:Tool | Qt:WindowStaysOnTopHint | Qt:FramelessWindowHint);
mpLocationListView = new MySuggestionList(mpListPop);

pParent = parent dialog box (even for lineEdit)

此问题仅适用于Mac。这里的问题是:虽然导航键(左和右)工作正常,但我无法点击mpListPop(只要mpListPop被填充并显示)。 我无法使用Qt :: Tool。如果我不使用Qt:WindowStaysOnTopHint,则mpListPop显示在父窗口小部件后面(Qt4.7中的bug并在Qt5.0中修复。我使用的是Qt4.7)并使用Qt:WindowStaysOnTopHint对我来说是必需的。 在Widows上,这个实现(即使没有Qt:WindowStaysOnTopHint标志)也可以正常工作。

欢迎任何建议。在此先感谢。

〜雄激素

0 个答案:

没有答案