Seite 1 von 1

Probleme mit QListView und Scrollbar

Verfasst: 21. September 2004 18:18
von Pusher
Hallo,

ich möchte eine QListView als CenterWidget in einem QMainWindow mit einigen Items füllen, die so lange Texte enthalten, daß sie nicht mehr auf den bildschirm passen.
Ich hab jetzt schon alles versucht, aber leider wird trotz ColumWidthMode(Maximum) die letzte Spalte abgeschnitten, anstatt das ein horizontaler Scroll-Balken entsteht, wie es eigentlich sein müßte...

Ich hoffe, daß ihr mir helfen könnt.


MfG Marc

Verfasst: 21. September 2004 18:45
von lepsai
haste schon

setHScrollBarMode( AlwaysOn );
setVScrollBarMode( AlwaysOn );

probiert?

Verfasst: 21. September 2004 18:53
von Pusher
hab ich auch schon probiert, bringt aber leider keinen Erfolg.....

Verfasst: 21. September 2004 22:17
von pm_Snake
Der vertikale wurde bei mir selbstständig aktiviert. ich denke beim horizontalen sollte es eigentlich auch so sein. Irgendwo vlt. einen Fehler übersehen?

Verfasst: 22. September 2004 08:11
von Pusher
Der Vertikale kommt auch automatisch, leider ist das mit dem Horizontalen nicht der Fall.

Ich suche schon die ganze Zeit nach einem Fehler, leider ohne Erfolg.
Hier ist der Code. Vielleicht ueberseh ich ja die ganze Zeit was.

Code: Alles auswählen

  mOutputView = new QListView(this);
    mOutputView->addColumn( tr( "1" ) );
    mOutputView->addColumn( tr( "2" ) );
    mOutputView->addColumn( tr( "3" ) );
    mOutputView->addColumn( tr( "4" ) );
    mOutputView->addColumn( tr( "5" ) );
    mOutputView->addColumn( tr( "6t" ) );
    QFont mOutputView_font(  mOutputView->font() );
    mOutputView_font.setFamily( "Fixed" );
    mOutputView->setFont( mOutputView_font ); 
    mOutputView->setResizePolicy( QScrollView::Manual );
    mOutputView->setSelectionMode( QListView::Single );
    mOutputView->setResizeMode( QListView::LastColumn );
    mOutputView->setSorting(-1, false);
    mOutputView->setAllColumnsShowFocus(true);
    mOutputView->setColumnAlignment(2, Qt::AlignHCenter);
    mOutputView->header()->setLabel( 0, tr( "1" ) );
    mOutputView->header()->setLabel( 1, tr( "2" ) );
    mOutputView->header()->setLabel( 2, tr( "3" ) );
    mOutputView->header()->setLabel( 3, tr( "4" ) );
    mOutputView->header()->setLabel( 4, tr( "5" ) );
    mOutputView->header()->setLabel( 5, tr( "6" ) );
    setFocusProxy( mOutputView );
    setCentralWidget( mOutputView );
    mOutputView->setColumnWidthMode( 0, QListView::Maximum );
    mOutputView->setColumnWidthMode( 1, QListView::Maximum );
    mOutputView->setColumnWidthMode( 2, QListView::Maximum );
    mOutputView->setColumnWidthMode( 3, QListView::Maximum );
    mOutputView->setColumnWidthMode( 4, QListView::Maximum );
    mOutputView->setColumnWidthMode( 5, QListView::Maximum );
[/code]

Verfasst: 22. September 2004 10:38
von lepsai
bei mir hat's jetzt nach dem Abschlaten von mOutputView->setResizeMode( QListView::LastColumn ); funktioniert. Aber an sich ein lustiges Problem :)

Verfasst: 22. September 2004 10:51
von Pusher
Super, hat gefunzt!

Vielen Danke!!!

:D