Python GTK ScrolledWindow 高度问题
Python GTK ScrolledWindow Height issue
我正在使用 glade 生成 GTK 应用程序布局并使用 python 应用程序进行事件处理。我添加了一个 ScrolledWindow 组件:
<child>
<object class="GtkScrolledWindow" id="GraphWindow">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="shadow_type">in</property>
<child>
<placeholder/>
</child>
</object>
<packing>
<property name="left_attach">0</property>
<property name="top_attach">2</property>
</packing>
</child>
现在我尝试在上面给出的 window.
中使用 matplotlib 绘制图表
class WeatherForecastApplicationBuilder(Gtk.Builder):
def __init__(self, *args, **kwargs):
Gtk.Builder.__init__(self, *args, **kwargs)
self.add_from_file("layout.glade")
self.window = self.get_object("WeatherForecastWindow")
self.graph_window = self.get_object("GraphWindow")
self._get_widgets_()
self.connect_signals(self)
self.window.show_all()
Gtk.main()
def _draw_chart_(self):
figure = Figure()
subplot = figure.add_subplot(111)
subplot.plot(
[1, 2, 3],
[4, 5, 6],
)
subplot.set(xlabel='Date', ylabel='Temp', title='Temprature Change')
canvas = FigureCanvas(figure)
self.graph_window.add(canvas)
self.window.show_all()
问题是 ScrolledWindow 的高度是固定的,不会扩展。我希望它覆盖整个 window。滚动的 window 呈现如下:
如何扩展ScrolledWindow组件的高度,使其覆盖底部的空白space
Link 到完整的空地布局文件。
我通过在 layout.glade
文件的 ScrolledWindow 对象中将以下 属性 设置为 true
解决了这个问题。
<property name="vexpand">True</property>
我正在使用 glade 生成 GTK 应用程序布局并使用 python 应用程序进行事件处理。我添加了一个 ScrolledWindow 组件:
<child>
<object class="GtkScrolledWindow" id="GraphWindow">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="shadow_type">in</property>
<child>
<placeholder/>
</child>
</object>
<packing>
<property name="left_attach">0</property>
<property name="top_attach">2</property>
</packing>
</child>
现在我尝试在上面给出的 window.
中使用 matplotlib 绘制图表class WeatherForecastApplicationBuilder(Gtk.Builder):
def __init__(self, *args, **kwargs):
Gtk.Builder.__init__(self, *args, **kwargs)
self.add_from_file("layout.glade")
self.window = self.get_object("WeatherForecastWindow")
self.graph_window = self.get_object("GraphWindow")
self._get_widgets_()
self.connect_signals(self)
self.window.show_all()
Gtk.main()
def _draw_chart_(self):
figure = Figure()
subplot = figure.add_subplot(111)
subplot.plot(
[1, 2, 3],
[4, 5, 6],
)
subplot.set(xlabel='Date', ylabel='Temp', title='Temprature Change')
canvas = FigureCanvas(figure)
self.graph_window.add(canvas)
self.window.show_all()
问题是 ScrolledWindow 的高度是固定的,不会扩展。我希望它覆盖整个 window。滚动的 window 呈现如下:
如何扩展ScrolledWindow组件的高度,使其覆盖底部的空白space
Link 到完整的空地布局文件。
我通过在 layout.glade
文件的 ScrolledWindow 对象中将以下 属性 设置为 true
解决了这个问题。
<property name="vexpand">True</property>