Python StyledTextCtrl не может создать доступ только для чтения

#python #wxstyledtextctrl

#python #wxstyledtextctrl

Вопрос:

У меня есть окно журнала StyledTextCtrl, в которое я хочу записывать текст только через python, и я НЕ могу печатать на клавиатуре, чтобы вводить текст вручную. Когда я использую setEditable (False), это блокирует все окно, поэтому python также не может выполнять запись в окно. Как мне сделать так, чтобы python мог записывать в него, но я не могу?

 self.running_log1 = wx.stc.StyledTextCtrl(self, pos=(5, 5), size=(575,505))
self.running_log1.SetMarginWidth(1, 0)
self.running_log1.SetEditable(False)

----------------------------

self.running_log1.AppendText(line)
  

Ответ №1:

У меня была такая же проблема. Не уверен, что это правильный способ сделать это, но способ, которым я обошел это, состоял в том, чтобы установить editable в true перед добавлением, а затем установить editable в false после добавления. Итак, в вашем примере код будет выглядеть следующим образом:

 self.running_log1 = wx.stc.StyledTextCtrl(self, pos=(5, 5), size=(575,505))
self.running_log1.SetMarginWidth(1, 0)
self.running_log1.SetEditable(False)

----------------------------

self.running_log1.SetEditable(True)
self.running_log1.AppendText(line)
self.running_log1.SetEditable(False)