2011-03-09 72 views
3

我有一個多行,在wxPython 只讀TextCtrl我知道如何使用wxPython中添加行TextCtrl

myTextCtrl.SetValue('hello') 

設定值,但這種情況將會改變任何我以前在我的TextCtrl ... 如何添加一個新的行,並保持我以前的任何東西?

回答

7

無論是widget.AppendTextwidget.WriteText每次都會寫一個新的行,如果你有一個換行符發送您的字符串(如「你好\ N」)

AppendText,將在文文末附加控制。 WriteText除了因爲新文本放在當前插入點而相同之外。

+0

謝謝,那工作 – lamba 2011-03-09 19:02:02

+1

謝謝,也:) – CosminO 2013-06-21 16:54:02

0
myTextCtrl.AppendText('hello') 

這不會自行添加換行符,所以如果需要,您將不得不在字符串中包含該換行符。

1

我以前遇到過這樣的問題,想分享我在這個主題上發現的內容,以備將來查詢。

爲了成功地具有多widget.TextCtrl對象解譯換行符(\ n)字符正確,兩個條件必須滿足:在實例化時

1)wx.TE_MULTILINE標籤被包括在「樣式」參數目的。

2)設置widget.TextCtrl對象的文本值時,必須使用widget.SetValue而不是widget.SetLabel以正確包含換行符。使用widget.SetLabel可以完全刪除換行符,也可能會刪除其他不可打印的字符。

+0

'wx.TE_MULTILINE'是一個很好的除了華金回答,但'widget.SetValue'不起作用。 'widget.WriteText'確實。 – 2017-10-11 11:33:46

相關問題