jjzjj

wxpython

全部标签

python - 如何正确安装 wxPython?

所以我四处寻找在Python上可以做的不同事情,比如用于闪烁文本或计时器的代码,但是当我将它们复制到我的窗口时,经常出现语法错误。现在,也许您不打算直接复制它们,但我得到的一个错误是“没有名为wx的模块”。我了解到我可以通过安装wxPython来获取该模块。问题是,我已经尝试了所有4个选项,但没有一个对我有用。我应该下载哪一个以及如何使用Windows进行设置?谢谢 最佳答案 它在PyPI上。从wxPython4开始,支持Python3。不幸的是,PyPI有一个名为wx的包,它停留在3.0.3版本;请务必安装名为wxpython的包

python - wxPython wxTextCtrl中每一行的不同前景色

我有一条多线wx.TextCtrl()我设置的对象是用于编写字符串的前景和背景颜色。我需要用不同的颜色编写不同的行,wx.TextCtrl.setForgroundcolor()也更改所有以前的线条颜色。有办法解决这个问题吗? 最佳答案 wx.Python中有几种获取彩色文本的方法。wx.TextCtrlwx.TE_RICH,wx.TE_RICH2样式wx.stc.StyledTextCtrlwx.richtext.RichTextCtrlwx.HtmlWindow(在文本中插入颜色标签)wx.ListCrtl您可以在wxPytho

python - 如何复制matplotlib图形?

我有一个FigureCanvasWxAgg实例,其中一个图形显示在一个框架上。如果用户在Canvas上单击另一个框架,其中包含包含相同图形的新FigureCanvasWxAgg。到现在为止,关闭新框架可能会导致破坏图形的C++部分,因此它在第一帧中不可用。如何保存图形?在这种情况下,复制模块中的Pythondeepcopy不起作用。提前致谢。 最佳答案 我不熟悉内部工作原理,但很容易想象处理框架会如何损坏图形数据。画画贵吗?否则我会采取有点胆怯的方法,简单地重新绘制它;) 关于pytho

python - 为什么 WxPython 的运动检测这么慢?

我设置了on_motion来处理EVT_MOTION。我想要鼠标位置以交互式生成特定于坐标的图像,但WxPython在注册连续运动事件时有~400ms延迟。这使得界面react迟钝。为什么EVT_MOTION这么慢,我该如何解决?我在Ubuntu11.10和WinXP上试过,延迟相当吗?我需要快速响应时间才能从图片中选择一部分,如图所示。就目前而言,“十字准线”跟随鼠标的速度太慢了。这是我尝试过的代码EVT_MOTION:defon_motion(self,event):"""mouseinmotion"""#pt=event.GetPosition()self.mouseover_l

python - 在 wxPython 的文本框中按下输入时获取文本

我有一个(单行)TextCtrl。用户将数据输入其中。当他们按下enter键时,需要提取框中的内容以便对其进行处理。我不知道如何捕捉输入被按下的情况。根据文档,在我的TextCtrl上设置了wx.TE_PROCESS_ENTER样式,当在框中按下回车时,它应该生成一个wx.EVT_COMMAND_TEXT_ENTER事件,然后我可以捕捉到。然而,wx.EVT_COMMAND_TEXT_ENTER似乎不存在(我得到“模块没有属性EVT_COMMAND_TEXT_ENTER”),所以我有点卡住了。谷歌搜索只是让一些人提示wx.EVT_COMMAND_TEXT_ENTER不起作用,所以我想我

Python GUI 应用分发 : written in wxPython, TKinter 或 QT

我的问题是关于跨平台(Mac/Linux/Windows)分发GUI应用程序的难易程度,我想知道哪一个能让用户的工作变得最轻松。我目前的理解是,Tkinter应用程序对用户来说是最容易(安装)的,因为只要用户在她的盒子里安装了Python,我的应用程序就应该准备好在那个盒子上运行。对于用wxPython或pyQT编写的GUI应用程序,用户需要先在她的盒子中安装wxWidget或QT,这是一个额外的步骤,然后再安装我的GUI应用程序。(但我的Ubuntu盒子似乎默认安装了wxWidget库和QT库,是一个规范还是Ubuntu发行版对用户更友好?我猜Windows和Mac可能默认不提供它们

python - wxPython wx.lib.plot.PlotCanvas 错误

我正在制作一个非常简单的绘图wxApp。我已经安装了Python2.7.9和wxPython3.0.2这是我的代码:importwximportwx.lib.plotasplotclassPantalla(wx.Frame):def__init__(self):app=wx.App()self.frame1=wx.Frame(None,title="GRAFICADOR",id=-1,size=(500,500))self.panel1=wx.Panel(self.frame1)self.panel1.SetBackgroundColour("white")plotter=plot.P

python - Mac OS X 上的 wxPython 2.9

我正在使用EnthoughtPythonDistribution(7.2,64位)。它没有wxPython(这很重要)。不过wxPython-2.9好像支持64位的Cocoa接口(interface),所以我试了一下。实际上,一切都很顺利:命令pythonbuild-wxpython.py--osx_cocoa--mac_framework--install编译成功,甚至进入EPDsite-packages。然而,一个简单的wxPython代码importwxwx.App()失败并出现以下错误:Thisprogramneedsaccesstothescreen.Pleaserunwit

python - 如何从扩展名为 .pyw 的 Python 脚本打印到标准输出?

我有一个带有wxpythonGUI和一些命令行参数的python程序。我用py2exe生成了一个Windows可执行文件。我不想在后台有一个命令行窗口,所以py2exe使它成为一个没有这个窗口的pythonw可执行文件。这相当于使用*.pyw扩展名。问题是,如果您想查看可用的命令行参数,您自然会在shell上执行“main.exe-h”。尽管argparse提供了此信息,但由于*.pyw扩展名,它不会到达标准输出。那么如何使用pythonw为GUI应用程序重新启用标准输出?最小工作示例:#test.pyprint"hello"执行:#>pythontest.pyhello#>pytho

c++ - 来自 SWIG PyObject_Call 段错误的 Python 回调

我有一个wx.py.Shell.shell小部件,它允许用户执行与我的程序交互的python代码。我希望能够将用户在此空间中定义的函数传递到我的C++代码(通过wxswig生成的围绕我的自定义小部件的包装器)并执行它。在我的C++代码中,我使用std::function类来调用绑定(bind)函数(C++或Python)所以我创建了一个简单的类来用函数调用运算符包装PyObject。但是,当我尝试调用PyObject*时出现段错误。classPyMenuCallback{PyObject*Func;public:PyMenuCallback(constPyMenuCallback&op