Hallo
ich komm grad nicht weiter und zwar habe ich in ein Dockwidget in dem ich eine Grafik lade alledings ist die Grafik größer wie das Widget und ich benötige Scrollbars
nur irgendwie bekomm ich das nicht hin
Hätte jemand nen kleines Beispiel oder anregungen
Danke
ScooB
PySide Scrollarea
In der Dokumentation zu "QScrollArea" ist unmittelbar am Anfang ein Beispiel für das Anzeigen eines Bilds zu sehen.
soweit bin ich auch gekommen nur ist mein Problem das er die Grafik nicht anzeigt wenn ich es so verwende und dadurch auch das QWidget keine Scrollbar hat
mein Problem ist bestimmt das ich es nocht anhänge an das QWidget
Bei einem QMainwindow mach man ja .setCentralWidget() wie mache ich das jetzt in einem QWidget??
mein Problem ist bestimmt das ich es nocht anhänge an das QWidget
Bei einem QMainwindow mach man ja .setCentralWidget() wie mache ich das jetzt in einem QWidget??
Code des Witget das angedockt wird
Code wie das Widget als QDockwidget angedockt wird
Code: Alles auswählen
class singleline(QWidget):
def __init__(self, auswahl):
super(singleline, self).__init__()
self.imageLabel = QLabel()
self.image = QImage("1.png")
self.imageLabel.setPixmap(QPixmap.fromImage(self.image))
self.scrollArea = QScrollArea()
self.scrollArea.setBackgroundRole(QPalette.Dark)
self.scrollArea.setWidget(self.imageLabel)
if auswahl == 1:
self.singleline1()
else:
self.singleline2()
Code: Alles auswählen
self.dock = QDockWidget("Singleline1", self)
self.dock.setFeatures(QDockWidget.NoDockWidgetFeatures)
self.dock.setAllowedAreas(Qt.RightDockWidgetArea)
self.singleline1 = singleline(1)
self.dock.setWidget(self.singleline1)
self.addDockWidget(QtCore.Qt.RightDockWidgetArea, self.dock)
@ScooB: Keines der Steuerelement hat ein Vater-Objekt. Folglich ist es nicht weiter überraschend, dass die ScrollArea nicht angezeigt wird, schließlich wird ihr nirgendwo "gesagt", wo sie angezeigt werden soll. Das "parent"-Argument in den Konstruktoren von "QWidget"-Objekten ist nicht zum Spaß da, und sollte immer korrekt angegeben werden.
Gibt es einen besonderen Grund, warum "singleline" von "QWidget" erbt? Dem Beispiel zufolge wäre es wesentlich sinnvoller, wenn "singleline" direkt von "QScrollArea" erben würde, da der einzige Zweck von "singleline" offenbar die Anzeige der ScrollArea ist.
Klassennamen sollten gemäß PEP 8 mit einem Großbuchstaben beginnen ("singleline" → "Singleline").
Für die Zukunft gewöhne Dir bitte ab, unvollständige Ausschnitte zu zeigen. In diesem Fall hast Du Glück, dass der Fehler aus diesen Abschnitten ersichtlich ist, aber das ist erfahrungsgemäß ein seltenes Glück. Erstelle bitte stattdessen ein minimales, lauffähiges Beispiel, mit dem anderen den Fehler nachvollziehen können. Danke
Gibt es einen besonderen Grund, warum "singleline" von "QWidget" erbt? Dem Beispiel zufolge wäre es wesentlich sinnvoller, wenn "singleline" direkt von "QScrollArea" erben würde, da der einzige Zweck von "singleline" offenbar die Anzeige der ScrollArea ist.
Klassennamen sollten gemäß PEP 8 mit einem Großbuchstaben beginnen ("singleline" → "Singleline").
Für die Zukunft gewöhne Dir bitte ab, unvollständige Ausschnitte zu zeigen. In diesem Fall hast Du Glück, dass der Fehler aus diesen Abschnitten ersichtlich ist, aber das ist erfahrungsgemäß ein seltenes Glück. Erstelle bitte stattdessen ein minimales, lauffähiges Beispiel, mit dem anderen den Fehler nachvollziehen können. Danke
