我想在選項卡中創建一個滾動條(pyqt5),基于下面鏈接中的示例我做了一些更改以滿足我的需要但是滾動條沒有顯示在選項卡上并且我的圖表變小了。示例 PyQt4 - 如何將滾動條添加到固定大小的選項卡式窗口中?導入文件 https://filebin.net/u3m7m3x2k74wlm6limport sysimport osimport pandas as pdfrom PyQt5.QtWidgets import ( QApplication, QWidget,QHBoxLayout,QVBoxLayout,QPushButton,QTabWidget,QMainWindow,QGridLayout,QSizePolicy\ ,QScrollArea,QGroupBox)from PyQt5.QtGui import *from PyQt5.QtCore import *#import html import plotly.offline as poimport plotly.express as pximport plotly.graph_objs as gofrom PyQt5.QtWebEngineWidgets import *class Win(QMainWindow): def __init__(self): super().__init__() self.setGeometry(100,100, 1280,900) self.GuiApp=App() self.setCentralWidget(self.GuiApp) self.show()class Tab1(QWidget): def __init__(self, parent=None): super(Tab1, self).__init__(parent) df = pd.read_csv(r'C:/Users/User/Desktop/Python-setup test/Plot122.csv')# need to download the file from https://filebin.net/u3m7m3x2k74wlm6l data1 = px.line(df,x = 'Date', y ='AAPL.Open', color = 'Category') fig4 = go.Figure(data1) raw_html = '<html><head><meta charset="utf-8" />' raw_html += '<script src="https://cdn.plot.ly/plotly-latest.min.js"></script></head>' raw_html += '<body>' raw_html += po.plot(fig4, include_plotlyjs=False, output_type='div') raw_html += '</body></html>'#fig_view fig_view1 = QWebEngineView() fig_view2 = QWebEngineView() fig_view3 = QWebEngineView() fig_view4 = QWebEngineView() fig_view1.setHtml(raw_html) fig_view1.setFixedSize(700,600) fig_view1.show()我想在紅色框中添加滾動條,其中代碼位于“選項卡中的測試滾動條”之間,以顯示所有帶有“日期”的圖表,當最大化窗口時它將重疊。下面顯示圖表下方帶有“日期”的圖表
1 回答

UYOU
TA貢獻1878條經驗 獲得超4個贊
解決方案是把“tab1”是一個QScrollArea,而那個QScrollArea在QTabWidget中
class App(QWidget):
def __init__(self):
super().__init__()
bt1_button = QPushButton("BT1")
tab1 = Tab1()
scrollbar = QScrollArea(widgetResizable=True)
scrollbar.setWidget(tab1)
tabwidget = QTabWidget()
tabwidget.addTab(scrollbar, "Tab1")
layout = QGridLayout(self)
layout.addWidget(bt1_button, 0, 0)
layout.addWidget(tabwidget, 0, 1, 2, 1)
添加回答
舉報
0/150
提交
取消