Seite 1 von 1

Trennlinie vom QSplitter ändern

Verfasst: 27. Januar 2009 11:14
von jimmy017
Hallo,

ich hab ein Problem mit den Trennlinien vom Splitter. Ich wollte die Größe der Trennlinien auf 0px (oder kleiner als Standard) ändern, so dass man sie nicht mehr sieht. Ich verwende die Version 4.2.1.

Ist es generell möglich die Größe der Trennlinie zu verändern?
Falls ja, was müßte ich im folgenden Quellcode machen:

#include <QApplication>
#include <QSplitter>

int main(int argc, char *argv[])
{
QApplication app(argc, argv);

QWidget *widget1 = new QWidget();
widget1->setFixedHeight( 130 );
widget1->setFixedWidth( 250 );
widget1->setPalette( QColor(255, 0, 0, 127) );
widget1->setAutoFillBackground(true);

QWidget *widget2 = new QWidget();
widget2->setFixedHeight( 130 );
widget2->setFixedWidth( 250 );
widget2->setPalette( QColor(0, 255, 0, 127) );
widget2->setAutoFillBackground(true);

QWidget *widget3 = new QWidget();
widget3->setFixedHeight( 130 );
widget3->setFixedWidth( 250 );
widget3->setPalette( QColor(0, 0, 255, 127) );
widget3->setAutoFillBackground(true);

QSplitter *splitter = new QSplitter( Qt::Horizontal );
splitter->addWidget(widget1);
splitter->addWidget(widget2);
splitter->addWidget(widget3);

splitter->show();

return app.exec();
}

Verfasst: 27. Januar 2009 12:03
von archer
Hast du es schon mal mit QSplitterHandle versucht?

Verfasst: 1. April 2009 07:41
von archer
Man kann ews auch mit dem Stylesheet machen:

Code: Alles auswählen

 
splitter->setStyleSheet("QSplitter::handle:horizontal { "
                                  "   width: 2px; "
                                  "}");
  
splitter->setStyleSheet("QSplitter::handle:vertical { "
                                  "   height: 2px; "
                                  "}");
Bei mir funktioniert es, ich habe allerdings Qt 4.3.4.

Verfasst: 1. April 2009 13:30
von CLRS530
Das ist doch das absolut naheliegende.
http://doc.trolltech.com/4.5/qsplitter. ... Width-prop
Aber da wirst du minimal auf 1 kommen.