У меня есть Gtk.Label
, содержащийся в Gtk.Grid
примерно так:
self.__grid = Gtk.Grid()
self.__grid.set_row_spacing(2)
self.__grid.set_column_spacing(5)
self.__grid.props.margin = 5
#...
self.clock_label = Gtk.Label("N/A")
self.clock_label.set_halign(Gtk.Align.START)
self.__grid.attach(self.clock_label, current_col, current_row, 1, 1)
Что работает, как ожидалось. Однако я столкнулся с нежелательным поведением, которое означало, что по мере того, как тикали секунды, текст метки, установленный в другом месте, смещал столбец (поскольку метка часов является самой широкой вещью в этом столбце), вызывая все элементы справа от него. перемещаться вперед и назад по мере того, как сама струна становилась шире (с секундами, например, 8) или уже (с секундами, такими как 1).
Чтобы решить эту проблему, я добавил строку в код настройки для этой метки.
self.clock_label.set_width_chars(8)
И вуаля, это сработало. Однако он настаивает на центрировании текста, когда я это делаю, независимо от наличия или отсутствия set_halign()
.
Мне бы очень хотелось иметь метку, текст которой начинается с левой границы ячейки, но ширина которой также дополняется, чтобы изменения длины строки не вызывали беспокойства.
Любая помощь приветствуется. знак равно