看起来没有内置选项来禁用/删除中的InputBox/TextCtrl
部分wx.lib.filebrowsebutton.FileBrowseButton
,好吧,我确实想出了一个解决方法,它只是设置labelText
为空白,然后将其缩小以仅适合按钮本身,这样在视觉上你可以看出没有区别从一个普通的按钮,但我认为它不够好。
那么有没有办法完全禁用/删除该InputBox
部分?或者可能是一种将普通按钮与文件浏览器功能绑定的方法?
看起来没有内置选项来禁用/删除中的InputBox/TextCtrl
部分wx.lib.filebrowsebutton.FileBrowseButton
,好吧,我确实想出了一个解决方法,它只是设置labelText
为空白,然后将其缩小以仅适合按钮本身,这样在视觉上你可以看出没有区别从一个普通的按钮,但我认为它不够好。
那么有没有办法完全禁用/删除该InputBox
部分?或者可能是一种将普通按钮与文件浏览器功能绑定的方法?
如果你不需要 a textctrl
,那么你就不需要wx.lib.FileBrowseButton
. 您可以只拥有一个wx.Button
启动wx.FileDialog
实例的法线。事实上,仅此wx.lib.FileBrowsBbutton
而已。这是相关的源代码,整个东西可以在这里查看:https ://github.com/wxWidgets/wxPython/blob/master/wx/lib/filebrowsebutton.py
def OnBrowse (self, event = None):
""" Going to browse for file... """
current = self.GetValue()
directory = os.path.split(current)
if os.path.isdir( current):
directory = current
current = ''
elif directory and os.path.isdir( directory[0] ):
current = directory[1]
directory = directory [0]
else:
directory = self.startDirectory
current = ''
dlg = wx.FileDialog(self, self.dialogTitle, directory, current,
self.fileMask, self.fileMode)
if dlg.ShowModal() == wx.ID_OK:
self.SetValue(dlg.GetPath())
dlg.Destroy()