отобразить ведущий ноль в gtk.SpinButton - PullRequest
5 голосов
/ 03 апреля 2012

Мне бы хотелось, чтобы в спинбуте был начальный ноль, чтобы всегда отображались две цифры.

adj_hour = gtk.Adjustment(int(time.strftime("%H")),0,24,1,1)
entry_hour = gtk.SpinButton()
entry_hour.set_adjustment(adj_hour)

проблема в том, что первым аргументом gtk.Adjustment должен быть float / int.

я пробовал что-то вроде:

adj_hour = gtk.Adjustment(float(format(int(time.strftime("%H")), '02d')),0,24,1,1)

но это не работает.

1 Ответ

6 голосов
/ 03 апреля 2012

Подключение к сигналу output кнопки отжима.Например, адаптация кода C в документации, на которую я ссылаюсь:

def show_leading_zeros(spin_button):
    adjustment = spin_button.get_adjustment()
    spin_button.set_text('{:02d}'.format(int(adjustment.get_value())))
    return True

...

entry_hour.connect('output', show_leading_zeros)
...