У меня есть 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()
.
Мне бы очень хотелось иметь метку, текст которой начинается с левой границы ее ячейки, но ширина которой также дополняется, так что изменения длины строки не имеют значения.
Любая помощь приветствуется. =) * * 1 018