wx MediaCtrl Mac OS X后端不保持纵横比

2024-07-05 11:56:55 发布

您现在位置:Python中文网/ 问答频道 /正文

在MacOSX后端,我发现当窗口调整大小时,它不能保持纵横比?有办法吗?你知道吗

注意:这段代码似乎也不适用于URL。。。奇怪,但它适用于文件。。。(加载更改为LoadURI后仍然无法工作)

测试代码

import wx
import wx.media

class MyPanel(wx.Panel):

    def __init__(self, parent, id, f):
        wx.Panel.__init__(self, parent, id, size = (500, 500))
        sizer = wx.BoxSizer(wx.HORIZONTAL)
        self.mc = wx.media.MediaCtrl(self, -1)
        sizer.Add(self.mc, border = 3, flag = wx.ALL | wx.EXPAND, proportion = 1)
        self.Bind(wx.media.EVT_MEDIA_LOADED, self.OnMediaLoaded, self.mc)
        self.SetSizer(sizer)
        wx.CallLater(10000, self.Test, f)

    def Test(self, url):
        print "Loading"
        r = self.mc.Load(url)
        if not r:
            print "Failed to load"
    def OnMediaLoaded(self, event):
        wx.CallLater(3000, self.mc.Play)
        print "Playing..."


if __name__ == "__main__":
    fn = raw_input("File to load: ")
    app = wx.App(False)
    f = wx.Frame(None, -1)
    p = MyPanel(f, -1, fn)
    f.Show()
    app.MainLoop()

Tags: importselfidinitdefmcmediaparent