首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >未绘制QFrame

未绘制QFrame
EN

Stack Overflow用户
提问于 2013-05-17 16:01:22
回答 1查看 498关注 0票数 1

我在PyQt4 Python2.7 2.7中显示QFrame时遇到问题。

当我显示QLineEdit时,Qframe self.videoframeRemote没有绘制。

如果我删除QlineEdit,它将被绘制。

我找不到哪里出了问题。代码如下:

代码语言:javascript
复制
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)  

有什么建议吗?

致以敬意,

Ck

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-05-21 18:35:52

谢谢你,巴库鲁

添加self.videoframeRemote.setMinimumSize(640, 480)使视频帧可见!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16604241

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档