Изменение размера области рисования в GTK

Мое приложение выполняет поворот области рисования на 90 градусов, поэтому необходимо поменять местами ширину и высоту области рисования.

Как я могу изменить размер области рисования с помощью GTK таким образом, чтобы новая ширина и высота действительно применялись, а не просто запрашивались?


person Pieter    schedule 25.05.2010    source источник


Ответы (1)


Ширина/высота не могут устанавливаться виджетом, они определяются только его контейнером. Виджет может запрашивать только заданное измерение, и его контейнер выделит запрошенную область или больше (или даже меньше, но все стандартные контейнеры этого не сделают).

Таким образом, ответ будет полностью зависеть от того, как упакована область и в какой контейнер. Если ваше окно (как в GtkWindow) не включает в себя ничего расширяемого, установив для него режим без изменения размера, вы достигнете того, что хотите. В противном случае укажите, как упакована область и/или какие другие виджеты находятся на верхнем уровне.

person doublep    schedule 25.05.2010
comment
Ничего себе, GTK - настоящая боль. Спасибо за ваш четкий ответ, хотя! - person Pieter; 26.05.2010