Fenstergrösse ändern

Alles rund um die Programmierung mit Qt
Antworten
enlighter
Beiträge: 1
Registriert: 25. März 2006 20:59

Fenstergrösse ändern

Beitrag von enlighter »

Hallo,

ich suche einen Weg um ein Fenster an die Grösse seines Inhalts anzupassen. Die Grösse zu berechnen ist kein Problem - nur das Fenster dann auch in diese Grösse zu bekommen schaffe ich nicht.

Das Fenster ist von QWidget abgeleitet und das Hauptfenster meiner Anwendung. Dieser Code hier wurde vom QTDesigner erzeugt.

Code: Alles auswählen

    setEnabled( TRUE );
    statusLayout = new QGridLayout( this, 1, 1, 11, 6, "statusLayout"); 

    StatusList = new KListView( this, "StatusList" );
    StatusList->addColumn( tr2i18n( "Name" ) );
    StatusList->addColumn( tr2i18n( "Status" ) );
    StatusList->addColumn( tr2i18n( "IP" ) );
    StatusList->addColumn( tr2i18n( "Uptime" ) );
    StatusList->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)7, 0, 0, StatusList->sizePolicy().hasHeightForWidth() ) );
    StatusList->setMinimumSize( QSize( 500, 50 ) );
    StatusList->setFrameShadow( KListView::Raised );
    StatusList->setLineWidth( 2 );
    StatusList->setMidLineWidth( 0 );
    StatusList->setResizePolicy( KListView::Default );
    StatusList->setVScrollBarMode( KListView::Auto );
    StatusList->setHScrollBarMode( KListView::Auto );
    StatusList->setProperty( "selectionMode", "NoSelection" );
    StatusList->setResizeMode( KListView::AllColumns );

    statusLayout->addWidget( StatusList, 0, 0 );
    languageChange();
    resize( QSize(535, 72).expandedTo(minimumSizeHint()) );
    clearWState( WState_Polished );
Ich habe versucht das Fenster mit resize, setGeometry und setFixedHeight zu verändern. aber nichts hatte eine sonderliche Auswirkung. Auch die Grössenveränderungen im QTDesigner werden ignoriert. Wo liegt da mein Fehler?

Grüße,
Michael
upsala
Beiträge: 3946
Registriert: 5. Februar 2006 20:52
Wohnort: Landshut
Kontaktdaten:

Beitrag von upsala »

Mir ist nicht ganz klar was du eigentlich vor hast, aber vielleicht hilft es ja, wenn du folgende Zeile

Code: Alles auswählen

resize( QSize(535, 72).expandedTo(minimumSizeHint()) );
durch diese ersetzt:

Code: Alles auswählen

resize( QSize(0, 0).expandedTo(minimumSizeHint()) );
Antworten