这是我的问题:
self.textCtrl1 = wx.TextCtrl(id=wx.ID_ANY, name='textCtrl1',
parent=self, pos=wx.Point(0, 100), size=wx.Size(400, 100),
style=wx.VSCROLL | wx.TE_MULTILINE, value='')
self.textCtrl1.SetValue("I don't want this line to be selected by default!\n")
如您所见,每次对话框启动时,wx.TextCtrl
中的内容总是默认被选中,即使当我SetInsertionPoint
到最后一个字符时也是如此。这真的很烦人,因为默认情况下您输入的任何内容都会删除之前选择的内容,而且我找不到将光标设置到初始文本末尾的方法。那么如何解决这个问题呢?
附言:我正在使用 wxPython 2.8.12.1、python 2.7.3 的 win 7 64bit
最佳答案
奇怪的是,您的 textCtrl
文本会自动被选中。在正常情况下,光标只会指向框的开头。
尝试其中之一:
self.textCtrl.SetValue("I don't want this line to be selected by default!\n")
self.textCtrl.SetInsertionPoint(self.textCtrl.GetLastPosition())
或者不使用 SetValue
,而是使用这个:
print >> self.textCtrl, "I don't want this line to be selected by default!"
关于python - 如何让wx.TextCtrl内容默认不被选中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24692890/