Um die Rahmen in einer tableview mit einem delegate zu machen, kann man ja drawline verwenden.
Bequemer wäre es mit drawRect. Das hier funktioniert:
Code: Alles auswählen
void paint(QPainter *painter, const QStyleOptionViewItem &option, const QModelIndex &index) const
{
// painter->drawRect(option.rect);//RAHMEN um jede Zelle
if((index.row() == 4) && index.column() == 4) painter->drawRect(rechteck);
...
Code: Alles auswählen
QRect rechteck(option.rect.left() , option.rect.top(),80.0, 60.0);
if((index.row() == 4) && index.column() == 4) painter->drawRect(rechteck);
Wie geht das?
Und eine Zusatzfrage:
drawline zeichnet die Linie innerhalb der Zelle, drawRect zeichnet sie genau zwischen den Zellen.
Das schaut unschön aus, wenn sich drawline und drawrect an einer Zellenseite begegnen (Doppelter Strich).
Was tun, dass drawline auch genau zwischen den Zellen zeichnet?
LG
Chri