Вопрос

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

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

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

Это было полезно?

Решение

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

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

Другие советы

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

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

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

  1. Виджет
  2. Ширина виджета
  3. Высота виджета
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top