Pyinstaller与wxPython的Activex属性错误

0 投票
1 回答
577 浏览
提问于 2025-04-16 21:55

不知道为什么,当我用Pyinstaller来编译我的应用时,运行的时候出现了一个错误:

Traceback (most recent call last):
  File "<string>", line 2, in <module>
AttributeError: 'module' object has no attribute 'activex'

而我的代码的开头部分(代码本身非常长)。我还删除了开头的一大堆数组,这些数组里包含了应用的文本。

from wxPython.wx import *
from wx import *
from wx.lib.wordwrap import wordwrap
import sys, os, re

class CheatulousFrame(wxFrame):

    APP_STORAGE = ""
    APP_REGISTERED = False
    APP_WORKING = False

    ## ARRAYS GO HERE

    def __init__(self, parent, ID, title):
        wxFrame.__init__(self, parent, ID, title, (-1, -1), wxSize(600, 300))
        self.Centre()

        self.Bind(EVT_CLOSE, self.quitApp)

        self.getDataPath()
        self.checkRegistered()

        self.menuBar = wxMenuBar()
        self.createMenu(self.file_menu, "File")
        self.createMenu(self.conn_menu, "Connection")
        if self.APP_REGISTERED:
            self.createMenu(self.regt_menu, "Registration")
        else:
            self.createMenu(self.regf_menu, "Registration")
        self.createMenu(self.devt_menu, "Dev Tools")
        self.SetMenuBar(self.menuBar)     

1 个回答

3

你在用wxPython里的ActiveX东西吗?顺便说一下,你不应该这样导入wx:

from wxPython.wx import *
from wx import *

推荐的方式是

import wx

然后在每个东西前面加上“wx”。wxPython非常庞大,如果你按照你那种方式导入,几乎把里面所有的东西都导入了,而你其实并不需要那么多。“wxPython.wx”是个非常老的东西,我不知道为什么现在还会有这个。绝对不要使用它。

撰写回答