Seite 1 von 1

[solved]Wie pruefe ich ob mein QTableView eine Scrollbar hat

Verfasst: 18. September 2007 09:00
von joebar
Hi,

ich habe ein QTableView mit der Scrollbar Policy "as needed". Ich möchte im Programm jetzt prüfen ob ich eine Scrollbar habe. Wie kann ich das machen? War auf der Suche nach einer Funktion bool hasScrollBar(), konnte aber nichts finden. Ich dachte dann an

QScrollBar * QAbstractScrollArea::verticalScrollBar () const

Leider sagt die Doku nichts darüber aus was zurück gegeben wird wenn es keine Scrollbar gibt. Oder gibt es da einen Standardrueckgabe Wert der (zumindest dort) in der Doku nicht erwähnt wird? Ich hatte gehofft, dass ich evtl. width() prüfen kann und dann 0 rauskommt, kommt aber 100 raus...

Danke,
J.

Verfasst: 18. September 2007 09:04
von upsala
isVisible()?

Verfasst: 18. September 2007 10:17
von joebar
Am Ende vom Konstruktor wo ich meinen Dialog mit der Tabelle erstelle habe ich

Code: Alles auswählen

if((tableWidget -> verticalScrollBar()) -> isVisible() == true) qDebug() << "is vis";
eingefügt. Ich habe die Tabelle einmal mit nur einer Zeile gefüllt und einmal mit so vielen, dass eine Scrollbar da war. Resultat: if war nie abgearbeitet worden.

Verfasst: 18. September 2007 12:15
von upsala
Das ist zu früh. Meines wissens werden die Scrollbars während des Resize-Events angepasst. Du kannst ja versuchen ob während des Polish- bzw. Show-Events die Scrollbars schon passen.

Verfasst: 18. September 2007 13:44
von joebar
showEvent passt. Mal schauen ob ich es jetzt hin bekomme....

Danke!