1
У меня проблема с QFrame в PyQt4 Python2.7.
Когда я показываю QLineEdit, Qframe self.videoframeRemote
не нарисован.
Если я удалю QlineEdit, он будет нарисован.
Я не могу найти, что происходит не так. Вот код:QFrame не нарисовано
class Player(QtGui.QMainWindow):
def __init__(self, master=None):
QtGui.QMainWindow.__init__(self, master)
self.setWindowTitle("Media Player")
self.instance1 = vlc.Instance()
self.instance2 = vlc.Instance()
self.mediaplayerLocal = self.instance1.media_player_new()
self.mediaplayerRemote = self.instance2.media_player_new()
self.createUI()
self.isPaused = False
self.OpenWebCamMic()
def createUI(self):
self.widget = QtGui.QWidget(self)
self.setCentralWidget(self.widget)
self.vboxlayout = QtGui.QVBoxLayout()
self.hboxlayout = QtGui.QHBoxLayout()
# In this widget, the video will be drawn
self.videoframeLocal = QtGui.QFrame()
self.palette1 = self.videoframeLocal.palette()
self.palette1.setColor (QtGui.QPalette.Window, QtGui.QColor(0,0,0))
self.videoframeRemote = QtGui.QFrame()
self.palette2 = self.videoframeRemote.palette()
self.palette2.setColor (QtGui.QPalette.Window, QtGui.QColor(0,0,0))
self.videoframeLocal.setPalette(self.palette1)
self.videoframeLocal.setAutoFillBackground(True)
self.videoframeLocal.setMaximumSize(160, 120)
self.vboxlayout.addWidget(self.videoframeLocal)
self.URIbox = QtGui.QLineEdit("type SIP URI here")
self.URIbox.setMaximumSize(160, 30)
self.vboxlayout.addWidget(self.URIbox)
self.callButton = QtGui.QPushButton("Call")
self.callButton.setMaximumSize(160, 30)
self.vboxlayout.addWidget(self.callButton)
self.connect(self.callButton, QtCore.SIGNAL("clicked()"), self.establishCall)
self.byeButton = QtGui.QPushButton("Bye")
self.byeButton.setMaximumSize(160, 30)
self.vboxlayout.addWidget(self.byeButton)
self.connect(self.byeButton, QtCore.SIGNAL("clicked()"), self.Bye)
self.hboxlayout.addLayout(self.vboxlayout)
self.videoframeRemote.setPalette(self.palette2)
self.videoframeRemote.setAutoFillBackground(True)
self.videoframeRemote.setMaximumSize(640, 480)
self.hboxlayout.addWidget(self.videoframeRemote)
self.widget.setLayout(self.hboxlayout)
self.timer = QtCore.QTimer(self)
self.timer.setInterval(200)
self.connect(self.timer, QtCore.SIGNAL("timeout()"), self.updateUI)
Любые предложения?
С уважением,
Ск
Вы пытались установить минимальный размер * для рамки? Возможно, кадр отображается, но это похоже на 1px большой ... – Bakuriu
спасибо, что сделал. –