首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将我的代码与wxglade GUI集成

将我的代码与wxglade GUI集成
EN

Stack Overflow用户
提问于 2017-12-15 17:41:09
回答 1查看 200关注 0票数 0

我对蟒蛇很陌生。这学期我上了一门生物信息学课程,在我的最后一个项目中,我想创建一个应用程序,我们可以在我的实验室里使用它。我已经在PyCharm中创建和测试了实际的程序,但是我希望将它与GUI集成起来,并创建一个可执行文件,这样任何人都可以不用打开IDE就可以使用它。

到目前为止,我有一个简单的框架,有一个按钮,可以获取输入文件的路径。我想走这条路,把它插入到我已经存在的代码中。来自wxGlade代码,嵌套在class MyFrame(wx.Frame):下:

代码语言:javascript
复制
def OnOpenFileDialog(self, event):  # wxGlade: MyFrame.<event_handler>
    dlg = wx.FileDialog(self, message="Choose a file")
    if dlg.ShowModal() ==wx.ID_OK:
        f = dlg.GetPath()
        filename_input = re.sub("\\\\", "/", f)
    dlg.Destroy() 

我想把filename_input放在这里:

代码语言:javascript
复制
columns = defaultdict(list) # each value in each column is appended to a list
with open(filename_input) as file_object: # open the file
reader = csv.DictReader(file_object, delimiter='\t') # assign the file reader
for row in reader: # read a row as {column1: value1, column2: value2,...}
    for (k,v) in row.items(): # for each column (position) and value (residue)
        if v != '': # if the value isn't blank
            columns[k].append(v)  # append the residue to a list for that position

但是,似乎OnOpenFileDialog块中定义的任何内容都只存在于该块中。那么,我应该如何将代码集成到GUI中呢?我觉得把它贴在def OnOpenFileDialog下面是非常丑陋和糟糕的。我真的不知道从哪里开始。对不起,如果这个问题混淆了,我会尽量澄清是否需要。谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-01-20 13:36:38

定义一个方法read_file(filename)并从OnOpenFileDialog内部调用它

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47837339

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档