Используя PyGTK, я создаю кучу кнопок в области действия gtk.Dialog
используя метод add_button()
, как add_button()
ниже:
self.replace_all_button = self.add_button(_("Replace All"),
gtk.RESPONSE_ACCEPT)
В появившемся диалоговом окне есть все кнопки, расположенные справа, как показано на следующем изображении:
Тем не менее, я хочу заполнить область действия кнопками, как на этом изображении:
Я пробовал некоторые любопытные стратегии, например, чтобы переопределить параметры упаковки всех виджетов из области действия, как показано в приведенном ниже коде, но это не сработало.
def redefine_packing(widget):
_, _, padding, _ = self.action_area.query_child_packing(widget)
self.action_area.set_child_packing(widget, True, True, padding, _)
self.action_area.foreach(redefine_packing)
Как я могу это сделать? (Решение не нужно писать на Python, если я могу интуитивно перевести его с исходного языка, что я обычно могу сделать)
Моя проблема была "решена", когда я обнаружил, что искал несуществующую проблему.
Я пытаюсь копировать внешний вид окна поиска и замены Gedit. Затем я начал использовать Gedit с использованием языка "C", а диалог поиска и замены выглядел следующим образом:
Поэтому диалоговое окно, которое я пытаюсь скопировать, похоже на диалог, который у меня есть. Первоначальный диалог, который я смотрел, выглядел иначе, потому что его ярлыки были на другом языке и были больше.
Возможно, вы можете заменить hbuttonbox
в диалоговом окне обычным hbox
а затем легче управлять упаковкой.
gtk.HButtonBox
, который был классом, о котором я даже не подозревал. Спасибо!