2016-12-05 17 views
1

私はこれについて疑問に思っていたので、私はかなりのGoogle検索を行い、SetWrapMode(self, mode)関数を思いつきました。しかし、それは本当に詳細ではなかったし、は実際にはがそれを使う方法を言っていた何もなかった。私はそれを理解することになったので、私はここにスレッドを投稿し、stc.StyledTextCtrl()に単語の折り返しを付ける方法を疑問に思う他の人のために自分の質問に答えると思った。wxPythonでstc.StyledTextCtrl()のワードラップを設定する方法

答えて

1

まず、あなたのStyled Text Controlを既に定義しておく必要があります。これを行う方法がわからない場合は、wxPythonのチュートリアルをご覧ください。 wxPythonの完全なシリーズを持っているsentdex http://youtube.com/sentdexとテキストエディタを作っている4つのエピソードシリーズを持っているZach Kingというあなたのお勧めをお勧めします。とにかく、私のテキストコントロールの私の定義はこのようになります:self.control = stc.StyledTextCtrl(self, style=wx.TE_MULTILINE)。あなたのものは少し違って見えるかもしれませんが、全体的な考え方は同じです。

self.control = stc.StyledTextCtrl(self, style=wx.TE_MULTILINE) 

多くの場所は、それがSetWrapMode(self, mode)する必要があることを教えてくれますが、私が行うようにあなたが最初にself.CONTROLNAMEを持っている場合、あなたはまた、冒頭でself.ので、引数としての自己を置く場合は、エラーになります引数として数えます。しかし、あなたのコントロールがself.CONTROLNAMEで定義されていて、関数の冒頭にself.CONTROLNAMEを入れていないと、エラーが発生するので注意してください。モードは0または1-3でなければなりません。たとえば、私の場合はself.control.SetWrapMode(mode=1)のようになります。ワードラップモードのオプション:

0:なし| 1:ワードラップ| 2:文字の折り返し| 3:ホワイトスペースラップ

私の最終的な定義およびワードラップの設定は次のようになります。

self.control = stc.StyledTextCtrl(self, style=wx.TE_MULTILINE) 
self.control.SetWrapMode(mode=1) 

そして、それはそれです!これが助けてくれたらと思っています。

@Chris Beaulieuがモードオプションの問題を修正してくれてありがとうございます。

0

私はあなた自身の質問に答えてくれました。あなたは細かいところを除いて、あらゆる面で正しいのです。実際にはいくつかの異なるラップモードがあります。次のようにそれらに対応するタイプと値がありません:

  • 0:なし
  • 1:ワードラップ
  • 2:文字ラップ
  • 3:ホワイトスペースラップ

だから単語の折り返しを得るために0以上の値を入力することはできません。実際に0-3の外の値を入力すると、値がScintillaによって認識されるべきではないので、stcライブラリと同じ値になります。

+0

ありがとう、本当に助かります!私は今、私の答えを変えるつもりです。ところで、私は正当な理由がないために下降音を鳴らしているような嫌悪者の一人ではありませんが、そのようなものについてはコメントを使用したいと思うかもしれません...そうでない人のために答えを下降させる人がたくさんいます完全な答え。とにかく、明確化のおかげで!私はちょうど約1週間前にwxPythonを使い始めたので、かなり新しいです:) –

+1

あなたの歓迎、私はコメントについて同意します。私は1つを作りたいと思っていましたが、50以上の評判を持たない限り、残念ながらサイトでは他の人々の質問や話題にコメントすることはできません。これは私自身が答えを提出するまであなたの話題にコメントすることができなかったことを意味します:P –

関連する問題