• 4938阅读
  • 3回复

窗口数超范围? [复制链接]

上一主题 下一主题
离线rockyluo
 

只看楼主 正序阅读 楼主  发表于: 2008-09-26
— 本帖被 XChinux 执行加亮操作(2008-09-26) —
Exceeded maximum top-level windows
Exceeded maximum top-level windows
Exceeded maximum top-level windows
invokeRegionDestroy: Invalid window handle 2836
invokeRegionDestroy: Invalid window handle 2837
invokeRegionDestroy: Invalid window handle 2838
这是什么原因,难道Qt设计还有最大的窗口显示量?
我把窗口delete掉了还不行?
                                                                                                              我们要团结一心,秉承Linux的开源精神,共享Qt问题的解决方法!
离线jzj139
只看该作者 3楼 发表于: 2009-02-24
确实会出现这样的情况
源码是
QWSWindow* QWSServer::newWindow(int id, QWSClient* client)
{
    // Make a new window, put it on top.
    QWSWindow* w = new QWSWindow(id,client);
    int idx = rgnMan->add( id, QRegion() );
    if ( idx < 0 ) {
    qWarning( "Exceeded maximum top-level windows" );
    disconnectClient( client );
    return 0;
    }
    w->setAllocationIndex( idx );
    // insert after "stays on top" windows
    QWSWindow *win = windows.first();

    bool added = FALSE;
    while ( win ) {
    if ( !win->onTop ) {
        windows.insert( windows.at(), w );
        added = TRUE;
        break;
    }
    win = windows.next();
    }
    if ( !added )
    windows.append( w );
    emit windowEvent( w, Create );
    return w;
}
qt
离线sbtree
只看该作者 2楼 发表于: 2008-09-26
给出你的环境以及怎样的情况下出现的这样的提示信息,不然很难判断
windows 7 + VC++2008 + Qt4.5.2
离线rockyluo

只看该作者 1楼 发表于: 2008-09-26
没人遇见过么?
                                                                                                              我们要团结一心,秉承Linux的开源精神,共享Qt问题的解决方法!
快速回复
限100 字节
 
上一个 下一个