[solved]QListView HorizontalScrollbar resize tut nichts?

Alles rund um die Programmierung mit Qt
Antworten
MiSi
Beiträge: 15
Registriert: 13. Februar 2012 11:17

[solved]QListView HorizontalScrollbar resize tut nichts?

Beitrag von MiSi »

Hallo Volks,

ich will die Scrollbars (Vertical/Horizontal) meiner QListView in doppelter Breite darstellen.
Mein Ansatz ist folgender:

Im Constructor meines abgeleiteten QListView rufe ich folgendes auf.

Code: Alles auswählen

      this->verticalScrollBar()->resize(this->this->verticalScrollBar()->width(),this->verticalScrollBar()->height()*2);
      this->horizontalScrollBar()->resize(this->this->horizontalScrollBar()->width()*2,this->horizontalScrollBar()->height());
Wenn jetzt aber die Scrollbars, bei bedarf, angezeigt werden, sind die Scrollbars noch auf der default Groesse.

Wie loest man solch ein Problem? setGeometry hab ich auch schon versucht, ohne Erfolg.

Ich nutze Qt 3.3 also stehen keine StyleSheets zur verfuegung.

Viele Gruesse

Michael
Zuletzt geändert von MiSi am 16. April 2012 09:50, insgesamt 1-mal geändert.
trendyAndy
Beiträge: 54
Registriert: 27. März 2009 15:01

Re: QListView HorizontalScrollbar resize tut nichts?

Beitrag von trendyAndy »

Hallo Michael,

bau dir deine eigene ScrollBar und verändere den SizeHint.

Code: Alles auswählen

#ifndef NEWSCROLLBAR_H
#define NEWSCROLLBAR_H

#include <QScrollBar>

class NewScrollBar : public QScrollBar
{
Q_OBJECT
public:
    explicit NewScrollBar(QWidget *parent = 0);

    QSize sizeHint() const;

signals:

public slots:

};

#endif // NEWSCROLLBAR_H

#include "newscrollbar.h"

NewScrollBar::NewScrollBar(QWidget *parent) :
    QScrollBar(parent)
{
}

QSize NewScrollBar::sizeHint() const
{
    return QSize(this->width()+50, this->height()) ;
}
Du kannst dir auch noch einen SLOT oder was auch immer einbauen damit du die width() ändern kannst. Das Beispiel hat bei mir funktioniert.
In der TableView dann halt deiner View die eigene Scrollbar zuweisen.

Gruß
Andre
MiSi
Beiträge: 15
Registriert: 13. Februar 2012 11:17

Re: QListView HorizontalScrollbar resize tut nichts?

Beitrag von MiSi »

Hallo

danke für die Antwort. Wollte den Weg eigentlich umgehen, aber in dem Fall funktioniert es wohl nicht anders.
Antworten