Python Forum
[PyQt] QScrollArea does not work
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
[PyQt] QScrollArea does not work
#1
Hi!
What's wrong with my code? QScrollArea is shown but scrolling doesn't work.

import sys
import datetime
import xml.etree.ElementTree as ET
from PyQt5.QtWidgets import *  #QApplication, QDialog, QMainWindow, QMessageBox, QPushButton
from PyQt5 import QtWidgets
from PyQt5.QtCore import *
from PyQt5 import QtCore
from PyQt5.QtGui import *
from PyQt5 import QtGui
#from PyQt5 import uic

class MainWindow(QMainWindow):
    def __init__(self):
        super().__init__()

        self.resize(900, 600)
        self.setMinimumSize(900, 600)
        self.setWindowTitle("Gewicht")
        self.setWindowIcon(QIcon("Gewicht.png"))

        # Tab
        tabWidget = QTabWidget(self)
        tabWidget.setContextMenuPolicy(Qt.DefaultContextMenu)
        self.setCentralWidget(tabWidget)
        
        # Tab Daten
        tabDaten = QWidget()
        # ...

        # Tab Grafik
        tabGrafik = QWidget()
        tabWidget.addTab(tabGrafik, "Grafik")

        scrollArea = QScrollArea(tabGrafik)
        scrollArea.setGeometry(10, 100, 870, 430)
        sp2 = QSizePolicy(QSizePolicy.Expanding, QSizePolicy.Fixed)
        sp2.setHorizontalStretch(0)
        sp2.setVerticalStretch(0)
        sp2.setHeightForWidth(scrollArea.sizePolicy().hasHeightForWidth())  # ???
        scrollArea.setSizePolicy(sp2)
        scrollArea.setVerticalScrollBarPolicy(Qt.ScrollBarAlwaysOff)
        scrollArea.setHorizontalScrollBarPolicy(Qt.ScrollBarAlwaysOn)
        scrollArea.setWidgetResizable(False)   # !?!?!?!
        scrollArea.setAutoFillBackground(False)
        sawc = QWidget(scrollArea)   # scrollAreaWidgetContents
        sawc.setGeometry(QRect(1, 1, 1200, 405))
        sp3 = QSizePolicy(QSizePolicy.Fixed, QSizePolicy.Fixed)  # Preferred  !?!?!?
        sp3.setHorizontalStretch(0)
        sp3.setVerticalStretch(0)
        sp3.setHeightForWidth(sawc.sizePolicy().hasHeightForWidth())  # ???
        sawc.setSizePolicy(sp3)
        sawc.setMinimumSize(QSize(1200, 405))    # !?!?!?
        sawc.setStyleSheet("background-color:aquamarine;")
        pushButtonNeu = QPushButton(sawc)
        pushButtonNeu.setText("Neu")
        pushButtonNeu.setGeometry(QRect(10, 20, 1040, 90))
        pushButtonNeu.setStyleSheet("background-color:gray;")

        # Tab Infos
        tabInfos = QWidget()
        tabWidget.addTab(tabInfos, "Infos, Statistik")


        def tabChange(seltab):
            if seltab == 1:
                # ...
            if seltab == 2:
                # ...

        # Actions
        tabWidget.currentChanged.connect(tabChange)


app = QApplication(sys.argv)
window = MainWindow()
window.show()
app.exec()
Reply


Messages In This Thread
QScrollArea does not work - by HeinKurz - Jan-24-2023, 05:23 PM
RE: QScrollArea does not work - by Axel_Erfurt - Jan-24-2023, 06:56 PM
RE: QScrollArea does not work - by deanhystad - Jan-24-2023, 07:38 PM
RE: QScrollArea does not work - by HeinKurz - Jan-24-2023, 09:45 PM

Possibly Related Threads…
Thread Author Replies Views Last Post
  [PyQt] How do I get a QScrollArea to scroll? LavaCreeperKing 9 8,042 Oct-29-2021, 08:33 AM
Last Post: Axel_Erfurt
  [PyQt] QScrollArea with a gridlayout littleGreenDude 2 10,061 Jan-28-2019, 07:14 PM
Last Post: littleGreenDude

Forum Jump:

User Panel Messages

Announcements
Announcement #1 8/1/2020
Announcement #2 8/2/2020
Announcement #3 8/6/2020