Seite 1 von 1
QListView vertikale Linien zwischen den Spalten
Verfasst: 5. Dezember 2007 23:18
von FrankR
Ich versuche jetzt schon seit einiger Zeit in einer QListView zwischen den Spalten vertikale Linien zu ziehen. Wenn ich für die QListViewItems den paint Event modfizieren, bekomme ich zwar Linien, aber eben nur für die Zeilen, die auch Items enthalten.
Hat irgendjemand eine Idee, wie ich das noch umsetzen könnte?
(die Applikation setzt noch Qt 3.3.8 ein)
Danke,
frank
Verfasst: 6. Dezember 2007 09:03
von upsala
Und wenn du das paintEvent und paintEmptyArea überschreibst und damit die Linie ziehst?
Verfasst: 20. Dezember 2007 19:28
von FrankR
upsala hat geschrieben:Und wenn du das paintEvent und paintEmptyArea überschreibst und damit die Linie ziehst?
Vielen Dank! War der richtige Ansatz - ich hatte das auch schon versucht, nur meine Linien waren immer unterhalb des Viewports.
Code: Alles auswählen
if (verticalLines()) {
int i, x;
QPainter paint(this->viewport());
paint.setPen(QPen(QColor(200, 200, 200), 1, Qt::SolidLine));
for (i= 0, x= -2; i < columns() - 1; i++) {
x+= columnWidth(i);
paint.drawLine(x, 0, x, height());
}
}
Das macht jetzt das, was ich brauche.