Исправление размера GTK Widget? - PullRequest
0 голосов
/ 16 февраля 2010

Я пытаюсь исправить размер виджета в GTK +, особенно используя Gtk2hs с Haskell.

Я нарисовал изображение в DrawingArea и хотел бы указать точный размер этой области рисования. Я не хочу, чтобы другие виджеты или пользователь делали этот виджет больше или меньше. Это возможно?

Обратите внимание, я использую GHC версии 6.10.4 под Ubuntu 9.10. Gtk2hs версия 0.10.1.

Ответы [ 2 ]

3 голосов
/ 16 февраля 2010

Вы можете вызвать gtk_widget_set_size_request (), чтобы заставить виджет запрашивать фиксированную высоту и ширину. Вам придется определить эквивалент Haskell.

Обратите внимание, что это, как правило, Плохая идея (TM), и вы должны расположить ваши контейнеры и свойства дочерней упаковки так, чтобы ваши элементы управления имели соответствующий размер. Например, изменение размера изображения потребует изменения кода, если вы жестко кодируете значения запроса размера.

1 голос
/ 31 января 2015

Функция Gtk2Hs для исправления размера виджета:

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

с аргументами:

  1. Виджет
  2. Ширина виджета
  3. Высота виджета
...