Я использую curses для печати довольно приятного интерфейса консоли, и мне нужно, чтобы это зависело от размера терминала.Для этого я прочитал здесь , чтобы я мог использовать shutil.get_terminal_size
.Итак, я делаю этот код:
def display(self):
size_x,size_y = shutil.get_terminal_size()
print(size_x,size_y)
window_stat = curses.newwin(size_y,size_x//2-5,0,0)
window_alert = curses.newwin(size_y,size_x//2-5,0,size_x//2+5)
window_alert.addstr("\n " + self.alert2string())
window_stat.addstr("\n " + self.stat2string())
window_alert.box()
window_stat.box()
self.stdscr.refresh()
window_stat.refresh()
window_alert.refresh()
Но быстрый в том, что он работает отлично при первом вызове функции, но если я использую мышь, чтобы изменить размер терминала и вызвать функциюрезультат shutil.get_terminal_size()
всегда останется прежним.(120 30).
Есть ли у вас какие-либо идеи о том, откуда это может прийти?(На самом деле я использую Windows, и мне бы хотелось, чтобы она работала под всеми распространенными ОС)
Большое спасибо всем!