我正在尝试修复 GTK+ 中小部件的大小,特别是结合使用 Gtk2hs 和 Haskell。

我在绘图区域中绘制了图像,我想指定该绘图区域的确切大小。我不希望其他小部件或用户使该小部件变大或变小。这可能吗?

注意,我在 Ubuntu 9.10 下使用 ghc 版本 6.10.4。GTk2hs 版本 0.10.1。

有帮助吗?

解决方案

可以调用gtk_widget_set_size_request(),以使微件,以请求一个固定的高度和宽度。你必须确定哈斯克尔等价的。

请注意,这通常是一个坏主意(TM),你应该安排您的容器和包装子属性,你的控件的大小是否合适。例如,更改图像的大小将需要更改代码,如果你硬编码的大小要求值。

其他提示

用于修复小部件大小的 Gtk2Hs 函数是:

widgetSetSizeRequest 
  :: WidgetClass self    
  => self    
  -> Int    
  -> Int    
  -> IO ()

作为参数:

  1. 小部件
  2. 小部件的宽度
  3. 小部件的高度
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top