如何从 wxPython 中的文本控件传递突出显示的文本

Posted

技术标签:

【中文标题】如何从 wxPython 中的文本控件传递突出显示的文本【英文标题】:How do I pass highlighted text from text control in wxPython 【发布时间】:2013-12-10 16:00:14 【问题描述】:

我正在为我的 wxPython GUI 构建一些基于 PyEnchant 拼写检查器的额外功能。目前,我的文本控件将拼写错误的单词变为红色(详细说明 here 和 here),但我想加入 PyEnchant 的建议功能。

理想情况下,我希望在用户右键单击文本控件中突出显示的单词时弹出建议,类似于 Microsoft Word 的操作方式。但这听起来很难,所以当用户突出显示单词然后按下“alt+s”(使用加速器表)时,我会满足于抛出wx.SingleChoiceDialog

关键是能够提取用户突出显示的文本。我可以弄清楚其他所有事情,但这仍然让我感到困惑,以至于我开始怀疑它是否 可能的。希望是这样,知道怎么做,在此先感谢

【问题讨论】:

没试过,但GetStringSelection(或GetSelection 表示实际偏移量)应该会为您获取文本...这样行吗? 我在文档中没有看到,我会玩弄它 像梦一样工作,如果你为它写一个答案,我会接受它 【参考方案1】:

如前所述,GetStringSelection 函数将返回当前文本选择。

wxEditText 的文档没有显示此函数,但 wxTextCtrl 也派生自 wxTextEntry,这就是定义函数的地方。

【讨论】:

以上是关于如何从 wxPython 中的文本控件传递突出显示的文本的主要内容,如果未能解决你的问题,请参考以下文章

使用委托从按钮传递信息以突出显示单元格

捕获 WxPython 样式文本控件的回车键

静态文本和按钮

Python实例讲解 -- wxpython 基本的控件 (按钮)

wxPython树控件

jQuery:如何突出显示输入框中的文本?