Jan-24-2023, 05:23 PM
Hi!
What's wrong with my code? QScrollArea is shown but scrolling doesn't work.
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()
