Qt QFileDialog 输入字段 - 像 shell 一样选项卡完成
我有一个基本的 PyQt QFileDialog 文件浏览器,可以在 Python、Kubuntu 中使用。
我的问题是我希望文件输入中的“制表键”充当 shell 中制表符完成的作用。
有什么办法可以做到这一点吗?
I've got a basic PyQt QFileDialog file browser goin in Python, Kubuntu.
My issue is I would like the "tab key" in the file input to act as tab-complete does in a shell.
Is there any way to accomplish this?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
从 UI/UX 的角度来看,您确定这就是您想要的吗? 在表单和对话框中,选项卡传统上意味着转到下一个字段。 您可能会让用户感到困惑。 或者您可能会发起一场表单用户体验革命:-)
只是好奇这是否是您真正想要的?
From a UI/UX standpoint are you sure that's what you want? In forms and dialogs tab has traditionally meant go to next field. You might be confusing the user. Or you might start a revolution in User Experience for forms :-)
Just curious if that's what you really want?
您必须对 QFileDialog 进行子类化,并更改行为。 这可能并不容易。
You will have to subclass the QFileDialog, and change the behavior. It will probably not be easy.
我还没有使用 PyQt,但我认为 QCompleter 类可能是您想要的大部分方式:
http://doc.trolltech.com/4.5/tools-completer.html
我不知道它的选项卡是否完成,或者是否需要您自己添加。
I haven't made use of PyQt yet, but I think the QCompleter class might be most of the way to what you want:
http://doc.trolltech.com/4.5/tools-completer.html
I don't know if it tab completes or if that's something you'd have to add yourself.
我不确定你实际上可以,我在 QFileDialog。 Qt 在向用户隐藏实现细节方面相当积极。 您可以通过采用 QFileDialog (C++) 的实现并根据您的目的进行修改来实现此目的。
I am not sure you can actually, i don't see any access to the input field in the documentation of QFileDialog. Qt is fairly aggressive at hiding implementation detail from it's users. You might be able to do this by taking the implementation of QFileDialog (C++) and modify it for your purpose.