2
동적으로 페이지를 Gtk.Notebook에 추가하는 데 문제가 있습니다. Gtk.main()
이 호출되기 전에 작성된 페이지는 잘 표시되지만 이후에 생성 된 페이지는 표시되지 않으며 GUI에서는 변경되지 않습니다.새로 추가 된 Gtk.Notebook 페이지가 표시되지 않습니다.
C:\dev>python notebook.py
1
2
3
4
5
내가 on_button_clicked()
내부 self.notebook.hide()
및 self.notebook.show()
을 수행하려하지만 도움이되지 않았다 :
#!/usr/bin/env python
from gi.repository import Gtk
class MyApp:
def __init__(self):
self.window = Gtk.Window()
self.box = Gtk.Box(orientation=Gtk.Orientation.VERTICAL)
self.window.add(self.box)
self.notebook = Gtk.Notebook()
self.box.pack_start(self.notebook, True, True, 0)
self.button = Gtk.Button(label='Add Page')
self.button.connect('clicked', self.on_button_clicked)
self.box.pack_start(self.button, False, False, 0)
for _ in range(2):
numpage = self.notebook.get_n_pages() + 1
label = Gtk.Label(label='label{}'.format(numpage))
tab = Gtk.Label('tab{}'.format(numpage))
self.notebook.append_page(label, tab)
print(self.notebook.get_n_pages())
def on_button_clicked(self, widget):
numpage = self.notebook.get_n_pages() + 1
label = Gtk.Label(label='label{}'.format(numpage))
tab = Gtk.Label('tab{}'.format(numpage))
self.notebook.append_page(label, tab)
print(self.notebook.get_n_pages())
app = MyApp()
app.window.connect('delete-event', Gtk.main_quit)
app.window.show_all()
Gtk.main()
콘솔 출력은, 그러나, 그들은 참으로 생성되고 있음을 시사한다. 내가 놓친 게 있니?
감사합니다.
감사합니다. 해결되었습니다! – marcmar