2017-12-17 26 views
0

私はPythonには新しく、wxSpellCheckerDialogクラスにユーザー入力を渡す方法については苦労しました。 これは、チェックされるテキストが のような形式である場合に最も役立ちます。文字配列は、次のようになります。文字配列。 ユーザ がダイアログとやり取りするときに修正されます。文字列をチェックするため、最終的な結果 は、スペルチェッカーオブジェクトから取得する必要があります:wxSpellCheckerDialogのユーザー入力テキストを取得するには

>>> dlg = wxSpellCheckerDialog(None,-1,"") 
    >>> chkr = SpellChecker("en_AU",text) 
    >>> dlg.SetSpellChecker(chkr) 
    >>> dlg.ShowModal() 
    >>> text = dlg.GetSpellChecker().get_text() 

しかし、私は私のPythonコードに置かれていた、それはまだ正常に機能していません。

wxSpellCheckerDialogのユーザー入力文を割り当てる方法について私は助けてもらえますか?

ありがとうございます。

答えて

0

それは明らかですか?

import wx 
from enchant.checker import SpellChecker 
from enchant.checker.wxSpellCheckerDialog import wxSpellCheckerDialog 
app = wx.App() 
text = "This is sme text with a fw speling errors in it. Here are a fw more to tst it ut." 
dlg = wxSpellCheckerDialog(None,-1,"") 
chkr = SpellChecker("en_US",text) 
dlg.SetSpellChecker(chkr) 
dlg.ShowModal() 
checked_text = dlg.error_text.GetValue() 
print (checked_text) 
dlg.Destroy() 
app.MainLoop() 

悲しいことに、実装にはいくつかのバグがあるようです。そのため、本文全体が返されるわけではありません。ウィンドウのサイズ変更や確認したテキストの量に応じて表示されます。それかそれとも私の形式的な見方は、何かが欠けていました。
print (dir(dlg))を使用して、利用可能なアイテムを確認してください。

関連する問題