[英]load image from the Top in TabWidget from PyQt
在下面的代碼中,從特定路徑加載圖像並將其放置在Window的底部。在這里,我需要從頂部加載圖像。為此,我需要更改Tab窗口小部件(Tab01,Tab02,Tab03)的位置。 我無法從頂部加載圖像並且無法更改Tab窗口小部件的位置。如何執行此操作以及如何從頂部加載圖像。
import re,sys,os
from PyQt4 import QtGui,QtCore
class projs(QtGui.QWidget):
def __init__(self, parent=None):
super(projs,self).__init__(parent)
self.setWindowTitle(" V1.0 ")
tab_widget = QtGui.QTabWidget()
proj = QtGui.QWidget()
asset = QtGui.QWidget()
shots = QtGui.QWidget()
tab_widget.addTab(proj, "Tab01")
tab_widget.addTab(asset, "Tab02")
tab_widget.addTab(shots, "Tab03")
self.projPathLabel = QtGui.QLabel("Project Path ",proj)
self.projPathLabel.setGeometry(10,20,100,25)
self.assetPathLabel = QtGui.QLabel("Project ",asset)
self.assetPathLabel.setGeometry(20,20,100,25)
self.shotPathLabel = QtGui.QLabel("Project ",shots)
self.shotPathLabel.setGeometry(20,20,100,25)
vbox = QtGui.QVBoxLayout()
vbox.addWidget(tab_widget)
self.setLayout(vbox)
p1_vbox = QtGui.QVBoxLayout(proj)
proj.setLayout(p1_vbox)
p2_vbox = QtGui.QVBoxLayout(asset)
asset.setLayout(p2_vbox)
p3_vbox = QtGui.QVBoxLayout(shots)
shots.setLayout(p3_vbox)
vuvupic = QtGui.QPixmap("C:\Users\name\Documents\config\Logo2.jpg")
label = QtGui.QLabel(self)
label.setPixmap(vuvupic)
vbox.addWidget(label)
app = QtGui.QApplication([])
win = projs()
win.resize(410,390)
win.show()
sys.exit(app.exec_())
“從頂部開始”是指您要將圖像放置在TabWidget上方嗎? QLayouts的排列順序與vbox.addWidget()調用的順序相同,這意味着您可以對函數調用進行重新排序以將圖片放在頂部。
import re,sys,os
from PyQt4 import QtGui,QtCore
class projs(QtGui.QWidget):
def __init__(self, parent=None):
super(projs,self).__init__(parent)
self.setWindowTitle(" V1.0 ")
tab_widget = QtGui.QTabWidget()
proj = QtGui.QWidget()
asset = QtGui.QWidget()
shots = QtGui.QWidget()
tab_widget.addTab(proj, "Tab01")
tab_widget.addTab(asset, "Tab02")
tab_widget.addTab(shots, "Tab03")
self.projPathLabel = QtGui.QLabel("Project Path ",proj)
self.projPathLabel.setGeometry(10,20,100,25)
self.assetPathLabel = QtGui.QLabel("Project ",asset)
self.assetPathLabel.setGeometry(20,20,100,25)
self.shotPathLabel = QtGui.QLabel("Project ",shots)
self.shotPathLabel.setGeometry(20,20,100,25)
vbox = QtGui.QVBoxLayout()
vuvupic = QtGui.QPixmap("C:\Users\name\Documents\config\Logo2.jpg")
label = QtGui.QLabel(self)
label.setPixmap(vuvupic)
vbox.addWidget(label)
vbox.addWidget(tab_widget)
self.setLayout(vbox)
p1_vbox = QtGui.QVBoxLayout(proj)
proj.setLayout(p1_vbox)
p2_vbox = QtGui.QVBoxLayout(asset)
asset.setLayout(p2_vbox)
p3_vbox = QtGui.QVBoxLayout(shots)
shots.setLayout(p3_vbox)
app = QtGui.QApplication([])
win = projs()
win.resize(410,390)
win.show()
sys.exit(app.exec_())
另外,對於中等大小的項目,您可能需要考慮使用QtDesigner構建布局。 谷歌搜索“ pyqt designer”將為您提供大量入門博客和教程。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.