【问题标题】:Python window applicationPython 窗口应用程序
【发布时间】:2018-08-01 13:59:36
【问题描述】:

我只是有一般性的问题。我需要从将放置一些实时图形、图形等的项目开始。我应该使用什么?我只听说过 pyqt 和 tkinter。这将是一个大项目。

【问题讨论】:

    标签: python window


    【解决方案1】:

    我推荐使用wxPython,因为wxGladewxGladewxPython 的出色 GUI 构建器。它使用起来并不难,并且有很多 documentationguides。我从来没有遇到过 Python v3.2+ 的任何问题。

    wxPythonPyPlot 结合起来创建大量图表。 Here 是众多教程之一。

    您也可以使用matplotlib,另一个流行的图形/绘图库。

    matplotlib 示例

    from numpy import arange, sin, pi
    import matplotlib
    matplotlib.use('WXAgg')
    
    from matplotlib.backends.backend_wxagg import FigureCanvasWxAgg as FigureCanvas
    from matplotlib.backends.backend_wx import NavigationToolbar2Wx
    from matplotlib.figure import Figure
    
    import wx
    
    class CanvasPanel(wx.Panel):
        def __init__(self, parent):
            wx.Panel.__init__(self, parent)
            self.figure = Figure()
            self.axes = self.figure.add_subplot(111)
            self.canvas = FigureCanvas(self, -1, self.figure)
            self.sizer = wx.BoxSizer(wx.VERTICAL)
            self.sizer.Add(self.canvas, 1, wx.LEFT | wx.TOP | wx.GROW)
            self.SetSizer(self.sizer)
            self.Fit()
    
        def draw(self):
            t = arange(0.0, 3.0, 0.01)
            s = sin(2 * pi * t)
            self.axes.plot(t, s)
    
    
    if __name__ == "__main__":
        app = wx.PySimpleApp()
        fr = wx.Frame(None, title='test')
        panel = CanvasPanel(fr)
        panel.draw()
        fr.Show()
        app.MainLoop()
    

    【讨论】:

    • 主要假设是现代外观。 wxGlade 的示例看起来像 win98 风格。正如我所说,这将是一个包含许多选项、按钮和实时图表的大型项目。 -> 或者 -> 可以在 wxGlade 中创建自定义外观吗?
    • wxPython 包装了原生设计器元素——所以如果你在 Windows 10 上运行它,它看起来像 Windows 10、Mac OS X 等。它看起来像低档的 Windows 98 风格,因为 @987654337 @。自己研究一下如何自定义绘制元素、动画等。这只是一点几何和乐趣。 :) @forqed
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-07-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-02-26
    • 2011-10-10
    相关资源
    最近更新 更多