标签: wxpython

使用Python编写的wxWidget与C++相比要慢多少?

我正在研究编写一个显示图形节点网络的wxWidget,因此会进行大量的绘图操作.我知道使用Python来做它会变慢,但我宁愿让它工作并在以后的功能上移植它.理想情况下,如果性能影响不是很大,我宁愿将代码库保留在Python中以便于更新.

我想知道的是,我期待事情要慢多少?我意识到这是模糊和开放的结果,但我只需要了解期待什么.画出500个圆圈会陷入困境吗?会不会引人注意?你有什么经历?

c++ python performance drawing wxpython

6
推荐指数
1
解决办法
1108
查看次数

py2exe:由于DLL,编译的Python Windows应用程序将无法运行

我会承认我对Python很新,我真的不知道我在做什么.最近我使用Python 2.6.2和wxPython 2.8创建了一个非常小的Windows应用程序.而且效果很好; 我对它的正常工作表现非常满意.通常我的意思是当我直接通过Python解释器调用它时,如下所示:

> python myapp.py
Run Code Online (Sandbox Code Playgroud)

但是,我想更进一步,实际上将其编译成一个独立的可执行文件.所以我按照wxPython wiki中的这些指令使用了py2exe.起初它在命令行中给了我错误,说MSVCR90.dll丢失了.然后我将MSVCR90.dll复制到我的Python\DLLs文件夹中.这首先看起来像修复它,因为它成功地完成了它需要做的事情.它确实完成了一个快速警告,即程序依赖于某些DLL文件,我可能需要也可能不需要分发它们.

所以我导航到py2exe创建的dist文件夹并尝试运行我的可执行文件.但试图打开它只会弹出一个错误对话框,说:

This application failed to start because MSVCR90.dll was not found.
Re-installing the application may fix this problem.
Run Code Online (Sandbox Code Playgroud)

所以我继续将MSVCR90.dll再次复制到这个dist文件夹中.但那并没有成功.然后我将其复制到WINDOWS\system32目录中.那也没做到.我需要做些什么来使这个东西工作?

python wxpython py2exe

6
推荐指数
1
解决办法
6096
查看次数

是否可以在wxPython应用程序中使用Panda3D?

我正在开发一个wxPython应用程序.是否有可能将Panda3D控制的3D动画嵌入gui?

奖金问题:你认为Panda3D是最好的选择吗?(我的兴趣是物理模拟,不,我不需要支持物理的引擎,我的程序负责计算物理,我只需要一个引擎来展示它.)

python 3d wxpython

6
推荐指数
1
解决办法
1326
查看次数

wxPython更改鼠标光标以通知长时间运行的操作

我正在构建一个在远程网站上搜索东西的Python程序.有时操作需要很多秒钟,我相信用户不会注意到状态栏消息"正在搜索操作".因此,我想更改鼠标光标以突出显示程序仍在等待结果.

这是我使用的方法:

def OnButtonSearchClick( self, event ):
        """
        If there is text in the search text, launch a SearchOperation.
        """
        searched_value = self.m_search_text.GetValue()

        if not searched_value:
            return

        # clean eventual previous results
        self.EnableButtons(False)
        self.CleanSearchResults()

        operations.SearchOperation(self.m_frame, searched_value)
Run Code Online (Sandbox Code Playgroud)

我尝试了两种不同的方法,都在最后一行之前:

  • wx.BeginBusyCursor()
  • self.m_frame.SetCursor(wx.StockCursor(wx.CURSOR_WAIT))

他们都没有工作.

我在GNU/Linux下使用KDE.这在Gnome下也不起作用

任何提示?谢谢

python wxpython mouse-cursor

6
推荐指数
1
解决办法
5272
查看次数

Python:如果应用程序已在运行,如何禁止打开它

我设计了一个Windows工具软件的Windows 7中编码的PythonwxPython的用于GUI works.I不用想,如果它已经打开了,打开我的软件.我希望这样的功能,如果用户打开该软件,将在Windows屏幕上显示一个消息框,显示"您的应用程序已在运行".

Plz的帮助.提前致谢...

python wxpython

6
推荐指数
1
解决办法
439
查看次数

Python和Matplotlib以及鼠标悬停的注释

我正在使用此代码,当我点击底图Matplotlib图中的一个点时,会在地图上弹出注释.

dcc = DataCursor(self.figure.gca())
self.figure.canvas.mpl_connect('pick_event',dcc)
plot_handle.set_picker(5)
self.figure.canvas.draw()

class DataCursor(object):

    import matplotlib.pyplot as plt

    text_template = 'x: %0.2f\ny: %0.2f' 
    x, y = 0.0, 0.0 
    xoffset, yoffset = -20 , 20
    text_template = 'A: %s\nB: %s\nC: %s'


    def __init__(self, ax): 
        self.ax = ax 
        self.annotation = ax.annotate(self.text_template,  
                xy=(self.x, self.y), xytext=(0,0),
                textcoords='axes fraction', ha='left', va='bottom', fontsize=10,
                bbox=dict(boxstyle='round,pad=0.5', fc='yellow', alpha=1), 
                arrowprops=dict(arrowstyle='->', connectionstyle='arc3,rad=0') 
                ) 
        self.annotation.set_visible(False)
        self.annotation.draggable()


    def __call__(self, event):

        self.event = event 
        self.x, self.y = event.mouseevent.xdata, event.mouseevent.ydata

        if self.x is not None:
            glim = pickle.load(open("ListA.py","rb"))
            tlim …
Run Code Online (Sandbox Code Playgroud)

python annotations wxpython matplotlib matplotlib-basemap

6
推荐指数
1
解决办法
2万
查看次数

无法成功启动boa-constructor

当我通过启动脚本"Boa.py"从命令行启动boa-constructor时,我收到消息"

D:\Python27\Lib\site-packages\boa-constructor>python Boa.py
Starting Boa Constructor v0.6.1
importing wxPython
reading user preferences
Traceback (most recent call last):
File "Boa.py", line 271, in <module>
import Preferences, Utils
File "D:\Python27\Lib\site-packages\boa-constructor\Preferences.py", line 151
in <module>
execfile(file)
File "C:\Users\madfrog\.boa-constructor\prefs.rc.py", line 26, in <module>
splitterStyle = wx.SP_LIVE_UPDATE | wx.SP_3DSASH | wx.NO_3D
AttributeError: 'module' object has no attribute 'NO_3D'
Run Code Online (Sandbox Code Playgroud)

我的python版本是2.7.4,我下载了wxPyton"32位Python 2.7".有人说它是因为wxPython版本无与伦比,但对我来说只有64位或32位,我不知道如何处理这个问题.也许我应该重新安装python,哪个版本是2.6?

谢谢你的帮助.

python wxpython python-2.7 boa-constructor

6
推荐指数
2
解决办法
3772
查看次数

使用ctrl-c和ctrl-v复制并粘贴到wxPython中的wx.Grid中

我正在开发一个带有许多输入表的程序,我正在使用wxPython wx.Grid(主要用于Windows).我注意到ctrl-c和ctrl-v复制和粘贴doe snot只是工作,我搜索解决方案,以防止必须手动输入表中的所有数字.我在这里找到了Ruben Charles的一篇旧帖子:http: //comments.gmane.org/gmane.comp.python.wxpython/26387

这似乎或多或少地做了我想要的,所以我开始使用它并做了一些,我希望是改进.(我使用ctrl-Z为'undo'添加了功能,用于处理单个单元格,如果最后一行或列落在网格表之外,则添加功能.)

有没有更好的方法来做到这一点,或者你可能有改进的建议?特别是:如何使用Python 3.5实现这一功能?

import wx
import wx.grid

class MyFrame(wx.Frame):
    def __init__(self, parent, ID, title, pos=wx.DefaultPosition, size=wx.Size(800, 400), style=wx.DEFAULT_FRAME_STYLE):
        wx.Frame.__init__(self, parent, ID, title, pos, size, style)
        agrid = MyGrid(self, -1, wx.WANTS_CHARS)
        agrid.CreateGrid(7, 7)
        for count in range(3):
            for count2 in range(3):
                agrid.SetCellValue(count, count2, str(count + count2))

class MyGrid(wx.grid.Grid):
    """ A Copy&Paste enabled grid class"""
    def __init__(self, parent, id, style):
        wx.grid.Grid.__init__(self, parent, id, wx.DefaultPosition, wx.DefaultSize, style)
        wx.EVT_KEY_DOWN(self, self.OnKey)
        self.data4undo = [0, 0, '']

    def OnKey(self, …
Run Code Online (Sandbox Code Playgroud)

python wxpython copy-paste

6
推荐指数
2
解决办法
3752
查看次数

在WxPython面板中嵌入Seaborn图

我想问一下如何在wxPython面板中嵌入一​​个海盗形象.

与这篇文章类似,我想在wxPython面板中嵌入一​​个外部数字.wxPython根据Seaborn的kdeplot函数,我希望GUI 的特定面板根据高斯内核的带宽值绘制数据的密度轮廓,以及数据点的散点图.以下是我希望在面板中绘制的示例:例

到目前为止,我已经设法从一个单独的图中得到我想要的wxPython面板.是否有可能在一个wxPython面板中嵌入一​​个seaborn情节或者应该找到另一种方法来实现我想要的东西?

下面是我的代码的特定部分,在需要时生成绘图:

import seaborn as sns
import numpy as np

fig = self._view_frame.figure

data = np.loadtxt(r'data.csv',delimiter=',')
ax = fig.add_subplot(111)
ax.cla()
sns.kdeplot(data, bw=10, kernel='gau',  cmap="Reds")
ax.scatter(data[:,0],data[:,1], color='r')

fig.canvas.draw()
Run Code Online (Sandbox Code Playgroud)

这部分代码在wxPython面板中绘制了散乱的数据点,并为密度轮廓创建了一个外部图形.但是,如果我尝试ax.sns.kdeplot(...)我得到错误

属性错误:AxesSubplot对象没有属性.sns

我不知道我是否可以在wxPython面板中嵌入Seaborn人物,或者我应该尝试以另一种方式实现它.有什么建议?

提前致谢.

python wxpython matplotlib kernel-density seaborn

6
推荐指数
1
解决办法
964
查看次数

如何检查/是否使用了matplotlibrc

我在anaconda环境中使用python.当我导入matplotlib时,我遇到了与xwpython的兼容性问题.所以,我想切换后端.通常,这将使用matplotlibrc文件完成.但是,似乎~/.config/matplotlib/忽略了matplotlibrc .是否可以检查在导入matplotlib期间是否使用了matplotlibrc文件?使用python 2.7.

wxpython matplotlib python-2.7

6
推荐指数
1
解决办法
1101
查看次数