Фактическая ошибка вызвана гораздо более крупной программой, которую я писал, но следующий пример воспроизводит ошибку:
import wx
class MyLine(wx.Frame):
def __init__(self):
self.thickness = 1
self.length = 10
self.spin_ctrl = []
super(MyLine, self).__init__(None)
self.SetBackgroundColour(wx.ColourDatabase().Find("GREY"))
vbox = wx.BoxSizer(wx.VERTICAL)
#Length section
self.spin_ctrl.append(wx.SpinCtrl(self, initial = self.length, min = 1, max = 100))
vbox.Add(self.spin_ctrl[-1], 0, wx.ALL | wx.ALIGN_CENTER, 5)
#Thickness section
self.spin_ctrl.append(wx.SpinCtrl(self, initial = self.thickness, min = 1, max = 10))
vbox.Add(self.spin_ctrl[-1], 0, wx.ALL | wx.ALIGN_CENTER, 5)
self.SetSizerAndFit(vbox)
self.Show()
app = wx.App()
fr = MyLine()
app.MainLoop()
Когда запускается вышеприведенное, появляется окно с двумя SpinCtrl
кнопок.Если я нажму на первый, чтобы изменить значение, а затем закрою окно, все работает нормально, и сообщений об ошибках нет.Когда я нажимаю вторую кнопку, чтобы изменить ее значение, а затем закрываю окно, появляется следующая ошибка: Pango-CRITICAL **: pango_layout_get_cursor_pos: assertion 'index >= 0 && index <= layout->length' failed
.Это ошибка или я неправильно использую SpinCtrl
кнопки?
Я работаю WxPython4.0.3
.