效果图:
源码:
import sys
from PyQt5 import QtWidgets, QtGui, QtCore
from PyQt5.QtWidgets import (QApplication, QFileDialog, QWidget, QPushButton,QHBoxLayout,
QLabel,QSlider,QGridLayout,QMainWindow,QLineEdit,QTextEdit,QMenu,QAction,QComboBox,
QFrame,QListWidgetItem,QListWidget,QHBoxLayout,QVBoxLayout,QCheckBox,QSpacerItem,QSizePolicy)
from PyQt5.QtGui import QPixmap,QImage
from PyQt5.QtCore import Qt
import json,os
import numpy as np
import cv2
class MainWidget(QMainWindow):
def __init__(self, parent=None):
super().__init__(parent)
self.initUI()
def initUI(self):
self.setWindowTitle ('pyQt Learn')
self.resize(1000, 800)
self.centralWidget = QWidget()
self.setCentralWidget(self.centralWidget)
self.lableImage1 = QLabel('ButtonArea')
self.lableImage1.setMinimumHeight(30)
self.lableImage1.setStyleSheet("background-color: Red ")
self.lableImage1.setAlignment(Qt.AlignHCenter | Qt.AlignVCenter)
spacerItem1 = QSpacerItem(10,10,QSizePolicy.Preferred,QSizePolicy.MinimumExpanding)
vlayout1 = QVBoxLayout()
vlayout1.addWidget(self.lableImage1)
vlayout1.addSpacerItem(spacerItem1)
labelTest = QLabel('Test')
labelTest.setMinimumHeight(30)
labelTest.setStyleSheet("background-color: Red ")
labelTest.setAlignment(Qt.AlignHCenter | Qt.AlignVCenter)
vlayout1.addWidget(labelTest)
self.lableImage2 = QLabel('ImageArea')
self.lableImage2.setStyleSheet("background-color: Gray ")
self.lableImage2.setAlignment(Qt.AlignHCenter | Qt.AlignVCenter)
hlayout1 = QHBoxLayout()
hlayout1.addLayout(vlayout1,3)
hlayout1.addWidget(self.lableImage2,7)
layoutdisplay = QGridLayout(self.centralWidget)
layoutdisplay.setSpacing(2)
layoutdisplay.addLayout(hlayout1,0,0)
if __name__ == "__main__":
app = QApplication(sys.argv)
window = MainWidget()
window.resize(1000, 800)
window.show()
sys.exit(app.exec_())