为什么我引入的对话框销不了

为什么我引入的对话框销不了

以下是我在一个clicked 事件里的代码

       import EDI_SHOW
        edi_dialog = EDI_SHOW.Edi_Dialog(parent=self, ID=-1, title='')
        #sys.argv.append('Welcome Look')
        dlg = edi_dialog.ShowModal()
        #dlg.CenterOnScreen()
        if dlg == wx.ID_OK:
            print 'Ok'
        else:
            print 'Cancel'
        edi_dialog.Destroy()


以上代码在一个frame窗口的,打开时,会根据所选择的文件不同,传入的参参数也不同,可是发现,第二次打开与第一次打开的数据是一模一样,怀疑这个窗口没有重根本上销毁,并且第二次都比第一次快,是否说明这个累创建后到关闭,一直放在内存里呢?
请指点一下谢谢

解决了,将wx.frame中参数由原sys.argv[]改到wx.dialog中的__init__参数传递,发现

import wx
import sys
import images
import  wx.lib.mixins.listctrl  as  listmix

blno_cargo={}
blno_ctn={}
blno_cargo['140700152992']=[u'青岛港',u'上海港',u'香港',u'发货人',u'收货人',u'货名',u'件数',u'包装',u'体积',u'货描',u'唛头',u'危品标示',u'冷藏货',u'参与方',]

#test = sys.argv[1]

print 'lvxz ==================='
listblno = {
1 : [u"装货港", "You can edit", "me!"],
2 : [u"卸货港", "by", "clicking"],
3 : [u"目的港", "a", "cell"],
4 : [u"发货人", "change", "?"],
5 : [u"收货人", "TAB,", "cursor down,"],
6 : [u"货名", "to", "navigate"],
7 : [u"件数", "to", "navigate"],
8 : [u"包装", "to", "navigate"],
9 : [u"体积", "to", "navigate"],
10: [u"货描", "to", "navigate"],
11: [u"唛头", "to", "navigate"],
12: [u"危品标示", "to", "navigate"],
13: [u"冷藏货", "to", "navigate"],
14: [u"参与方", "to", "navigate"],
}

listctn = {
1 : [u"提单号", "You can edit", "me!"],
2 : [u"箱号", "by", "clicking"],
3 : [u"箱型", "a", "cell"],
4 : [u"铅封号", "change", "?"],
5 : [u"件数", "TAB,", "cursor down,"],
6 : [u"重量", "to", "navigate"],
7 : [u"尺寸", "to", "navigate"],
8 : [u"皮重", "to", "navigate"],
}

class Edi_Dialog(wx.Dialog):
    def __init__(
            self, parent, ID, title, size=wx.DefaultSize, pos=wx.DefaultPosition,
            style=wx.DEFAULT_DIALOG_STYLE,blno_data = []
            ):


发现颜色标示部分代码只有在窗口第一次创建时执行,当不是第一次打开时,这些代码是不会被执行的,窗口的实例化直接从__init__开始
不知道自己的理解对不对,哎,睡了一睡反证是这样可以达到自己的目的了
觉得wx没有gtk好