【问题标题】:wxPython DirDialog does not scroll to selected folderwxPython DirDialog 不滚动到选定的文件夹
【发布时间】:2018-01-14 17:38:27
【问题描述】:

我正在使用 wxPython DirDialog,它似乎有一个错误。 启动对话框时,我指定了默认路径 (defaultPath)。 对话框正在选择该路径,但对话框未滚动到所选路径。

而是将对话框滚动到对话框的顶部。

这让用户向下滚动很多以到达默认路径。 很不方便。

有什么办法可以改正吗?

使用: Python 2.6.5 wxPython 2.8.12.1 视窗 8.1

【问题讨论】:

  • 你在defaultPath中传递的到底是什么?
  • 只是一个普通的绝对路径。如果我向下滚动,我确实会在对话框中看到它被选中
  • 你的意思是C:\Foo\bar\zoo\file.txt
  • 没有。我传递一个这样的文件夹:C:\Foo\bar\zoo

标签: python windows wxpython


【解决方案1】:

这可能不是什么安慰,但在 Linux 上使用 Python 2.7.12 Wx '3.0.2.0 gtk2 (classic)',以下工作正常。检查你是否在做不同的事情。

def OnSelect_dir(self,event):
    dialog = wx.DirDialog (None,defaultPath=self.client_dir.GetValue(), message = 'Pick a directory.' )
    if dialog.ShowModal() == wx.ID_OK:
       self.client_dir.SetValue(dialog.GetPath())
    else:
       pass
    dialog.Destroy()

我也可以硬编码defaultPath='/home/rolf'

【讨论】:

  • 确实如此。没有安慰。 :) 我也这样做
  • 委屈:(
【解决方案2】:

显然,如果我排除样式“wx.DD_DEFAULT_STYLE”,那么它就可以正常工作。

所以这行得通:

style = wx.DD_DIR_MUST_EXIST

但这并没有将对话框正确地集中在 defaultPath 上:

style = wx.DD_DEFAULT_STYLE | wx.DD_DIR_MUST_EXIST

我猜它一定是某个地方的错误

【讨论】:

    猜你喜欢
    • 2011-10-20
    • 1970-01-01
    • 2011-07-22
    • 2012-06-25
    • 2011-08-20
    • 2020-04-28
    • 1970-01-01
    • 2019-07-11
    相关资源
    最近更新 更多