0

我目前有一个使用 wx.TextCtrl 的工作应用程序,我在其中打开一个选择文件夹对话框。我想添加拖放功能,这样我就可以拖放一个文件夹来获取文件夹路径,这样我就可以为用户提供这两个选项。这是我当前代码的一部分:

self.pathindir = wx.TextCtrl(panel, -1, pos=(35, 380), size=(300, 25))
self.buttonin = wx.Button(panel, -1, "Open", pos=(350, 378))
self.buttonin.Bind(wx.EVT_BUTTON, self.openindir)
def openindir(self, event):
    dlg = wx.DirDialog(self, "Choose your input lookup directory:", style=wx.DD_DEFAULT_STYLE | wx.DD_NEW_DIR_BUTTON)
    if dlg.ShowModal() == wx.ID_OK:
        global pathindir
        pathindir = dlg.GetPath()
        self.SetStatusText("Your selected input lookup directory is: %s" % pathindir)
    self.pathindir.Clear()
    self.pathindir.WriteText(pathindir)
    dlg.Destroy()
4

1 回答 1

0

你不能按照你的方式去做。您正在使用模态对话框,它会在对话框运行时暂停主应用程序。因此,您无法与主应用程序进行交互。这意味着您不能将路径从对话框拖放到框架。您可以只显示()对话框,或者您可以查看 wxPython 演示,其中也有一个示例。

于 2013-07-15T14:00:00.540 回答