在Classic和Phoenix之间改变了wxpython SpinCtrl / SpinButton吗?

时间:2017-10-01 07:22:57

标签: wxpython wxpython-phoenix

我已经开始考虑将我的一个项目从python2.7 / wxpython 3.0.2.0转换为python3.5.2 / wxpython 4.0.0b2并立即遇到SpinCtrl / SpinButton的问题。
我在Linux Mint 18.2上运行

使用此代码:

import wx

class MainWindow(wx.Frame):
    def __init__(self, *args, **kwargs):
        wx.Frame.__init__(self, *args, **kwargs)
        self.panel = wx.Panel(self)
        self.SetSize((200,200))
        sizer=wx.BoxSizer(wx.VERTICAL)
        text1 = wx.StaticText(self.panel,-1,"SpinCtrl")
        self.spin = wx.SpinCtrl(self.panel,-1, size=(100,25),style=wx.SP_VERTICAL)
        text2 = wx.StaticText(self.panel,-1,"SpinButton")
        self.spin2 = wx.SpinButton(self.panel,-1, size=(100,25),style=wx.SP_VERTICAL)
        sizer.Add(text1)
        sizer.Add(self.spin, 0, wx.LEFT, 15)
        sizer.Add((-1, -1), proportion=1)
        sizer.Add(text2)
        sizer.Add(self.spin2, 0, wx.LEFT, 15)
        self.SetSizer(sizer)
        self.Show()

app = wx.App()
win = MainWindow(None)
app.MainLoop()

当使用python2.7 / wxpython 3.0.2.0运行时,我得到了这个结果:
enter image description here

虽然使用python3.5.2 / wxpython 4.0.0b2运行相同的代码,但我得到了这个: enter image description here

我迫切希望得到#34;岁的#34;垂直旋转控制回来,因为它们的尺寸可以占据比这更大的空间#34; new"带+/-控件的版本。
有谁知道如何在wxpython 4.0.0b2中重新获得垂直旋转控件?

1 个答案:

答案 0 :(得分:0)

Robin指出,一次安装使用gtk2,另一次使用gtk3 使用以下安装说明解决了该问题。

sudo pip3 install -U -f https://extras.wxpython.org/wxPython4/extras/linux/gtk2/ubuntu-16.04 wxPython