【问题标题】:Unable to get height/width of a widget - gtkmm无法获取小部件的高度/宽度 - gtkmm
【发布时间】:2011-03-22 18:46:46
【问题描述】:

我正在使用 gtkmm 编写应用程序。

我编写了一个简单的小部件类,我只想在某些情况下显示在应用程序的主窗口中。否则,我希望标签“已禁用”可见。

为了实现这一点,我将小部件和标签打包到一个 VBox 中,并显示()和隐藏()它们以交换它们。

不过,自定义小部件远大于标签,所以我需要稍微调整一下标签的大小

我知道我可以使用 label.set_size_request(x,y),并且当我手动输入尺寸时它可以工作。但我知道,小部件的大小可能会有所不同,具体取决于使用的 Gtk 主题等。

我想设置标签 与小部件的尺寸完全相同 *。但是,使用 widget.get_height()* 不起作用 - 它总是返回 1。


也许一个线索是我在主窗口的构造函数中执行此操作。

【问题讨论】:

    标签: c++ linux gtk widget gtkmm


    【解决方案1】:

    我在 gtkmm 方面做得不多,在 pygtk 方面做得更多。但我认为要从get_width/get_height 获得有意义的值,必须实现小部件,这是一个可见的 X 窗口。而且我猜你的小部件在窗口构造函数中还不可见。

    我建议您改用 gtk.Notebook,并隐藏其选项卡。然后 gtk.Notebook 将控制标签和自定义小部件的大小。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-04-16
      • 1970-01-01
      • 2016-07-03
      • 2015-08-03
      • 1970-01-01
      • 2017-02-02
      • 2016-04-28
      • 2020-01-26
      相关资源
      最近更新 更多