Spec-Zone.ru › GTK 3.24

GtkLayout

GtkLayout — Бесконечно прокручиваемая область, содержащая дочерние виджеты и/или пользовательское рисование

Функции

GtkWidget * gtk_layout_new ()
void gtk_layout_put ()
void gtk_layout_move ()
void gtk_layout_set_size ()
void gtk_layout_get_size ()
GtkAdjustment * gtk_layout_get_hadjustment ()
GtkAdjustment * gtk_layout_get_vadjustment ()
void gtk_layout_set_hadjustment ()
void gtk_layout_set_vadjustment ()
GdkWindow * gtk_layout_get_bin_window ()

Свойства

guint высота Чтение/Запись
guint ширина Чтение/Запись

Свойства дочерних элементов

int x Чтение/Запись
int y Чтение/Запись

Типы и значения

struct GtkLayout

Иерархия объектов

    GObject
    ╰── GInitiallyUnowned
        ╰── GtkWidget
            ╰── GtkContainer
                ╰── GtkLayout

Реализованные интерфейсы

GtkLayout реализует AtkImplementorIface, GtkBuildable и GtkScrollable.

Включаемые файлы

#include <gtk/gtk.h>

Описание

GtkLayout похож на GtkDrawingArea тем, что это «чистый лист» и по умолчанию ничего не делает, кроме рисования пустого фона. Он отличается тем, что поддерживает прокрутку по умолчанию, реализуя GtkScrollable, и может содержать дочерние виджеты, так как это GtkContainer.

Если вам просто нужно рисовать, GtkDrawingArea — лучший выбор, так как он имеет меньшую нагрузку. Если вам просто нужно расположить дочерние виджеты в определённых точках, то GtkFixed предоставляет эту функциональность самостоятельно.

При обработке событий expose на GtkLayout вы должны рисовать на GdkWindow, возвращаемом gtk_layout_get_bin_window(), а не на том, который возвращает gtk_widget_get_window(), как вы бы делали для GtkDrawingArea.

Функции

gtk_layout_new ()

GtkWidget *
gtk_layout_new (GtkAdjustment *hadjustment,
                GtkAdjustment *vadjustment);

Создаёт новый GtkLayout. Если у вас нет конкретного настроек скроллинга для макета, передайте NULL для hadjustment и vadjustment .

Параметры

hadjustment

горизонтальная настройка прокрутки, или NULL.

[allow-none]

vadjustment

вертикальная настройка прокрутки, или NULL.

[allow-none]

Возвращаемое значение

новый GtkLayout

gtk_layout_put ()

void
gtk_layout_put (GtkLayout *layout,
                GtkWidget *child_widget,
                gint x,
                gint y);

Добавляет child_widget к layout в позиции (x ,y ). layout становится новым контейнером родителя для child_widget .

Параметры

layout

GtkLayout

child_widget

дочерний виджет

x

Позиция X дочернего виджета

y

Позиция Y дочернего виджета

gtk_layout_move ()

void
gtk_layout_move (GtkLayout *layout,
                 GtkWidget *child_widget,
                 gint x,
                 gint y);

Перемещает текущего дочернего элемента layout в новое положение.

Параметры

layout

GtkLayout

child_widget

текущий дочерний элемент layout

x

Позиция X для перемещения

y

Позиция Y для перемещения

gtk_layout_set_size ()

void
gtk_layout_set_size (GtkLayout *layout,
                     guint width,
                     guint height);

Устанавливает размер области прокрутки макета.

Параметры

layout

GtkLayout

width

ширина всей области прокрутки

height

высота всей области прокрутки

gtk_layout_get_size ()

void
gtk_layout_get_size (GtkLayout *layout,
                     guint *width,
                     guint *height);

Получает размер, установленный в макете, который определяет общие границы области полосы прокрутки макета. См. gtk_layout_set_size().

Параметры

layout

GtkLayout

width

место для хранения ширины, установленной для layout, или NULL.

[out][allow-none]

height

место для хранения высоты, установленной для layout, или NULL.

[out][allow-none]

gtk_layout_get_hadjustment ()

GtkAdjustment *
gtk_layout_get_hadjustment (GtkLayout *layout);

gtk_layout_get_hadjustment устарело с версии 3.0 и не должно использоваться в новых кодах.

Используйте gtk_scrollable_get_hadjustment()

Эта функция должна вызываться только после размещения макета в GtkScrolledWindow или при другой конфигурации для прокрутки. Она возвращает GtkAdjustment, используемый для связи между горизонтальной полосой прокрутки и layout .

См. GtkScrolledWindow, GtkScrollbar, GtkAdjustment для получения подробностей.

Параметры

layout

GtkLayout

Возвращаемое значение

горизонтальная настройка прокрутки.

[transfer none]

gtk_layout_get_vadjustment ()

GtkAdjustment *
gtk_layout_get_vadjustment (GtkLayout *layout);

gtk_layout_get_vadjustment устарело с версии 3.0 и не должно использоваться в новых кодах.

Используйте gtk_scrollable_get_vadjustment()

Эта функция должна вызываться только после размещения макета в GtkScrolledWindow или при другой конфигурации для прокрутки. Она возвращает GtkAdjustment, используемый для связи между вертикальной полосой прокрутки и layout .

См. GtkScrolledWindow, GtkScrollbar, GtkAdjustment для получения подробностей.

Параметры

layout

GtkLayout

Возвращаемое значение

вертикальная настройка прокрутки.

[transfer none]

gtk_layout_set_hadjustment ()

void
gtk_layout_set_hadjustment (GtkLayout *layout,
                            GtkAdjustment *adjustment);

gtk_layout_set_hadjustment устарело с версии 3.0 и не должно использоваться в новых кодах.

Используйте gtk_scrollable_set_hadjustment()

Устанавливает горизонтальную настройку прокрутки для макета.

См. GtkScrolledWindow, GtkScrollbar, GtkAdjustment для получения подробностей.

Параметры

layout

GtkLayout

adjustment

новая настройка прокрутки.

[allow-none]

gtk_layout_set_vadjustment ()

void
gtk_layout_set_vadjustment (GtkLayout *layout,
                            GtkAdjustment *adjustment);

gtk_layout_set_vadjustment устарело с версии 3.0 и не должно использоваться в новом коде.

Используйте gtk_scrollable_set_vadjustment()

Устанавливает вертикальную прокрутку для макета.

См. GtkScrolledWindow, GtkScrollbar, GtkAdjustment для получения подробностей.

Параметры

layout

a GtkLayout

adjustment

новая настройка прокрутки.

[allow-none]

gtk_layout_get_bin_window ()

GdkWindow *
gtk_layout_get_bin_window (GtkLayout *layout);

Получить окно bin макета, используемое для операций отрисовки.

Параметры

layout

a GtkLayout

Возвращаемое значение

a GdkWindow.

[transfer none]

С: 2.14

Типы и значения

struct GtkLayout

struct GtkLayout;

Подробное описание свойств

Свойство “height”

  “height”                   guint

Высота макета.

Владелец: GtkLayout

Флаги: Чтение / Запись

Разрешенные значения: <= G_MAXINT

Значение по умолчанию: 100

Свойство “width”

  “width”                    guint

Ширина макета.

Владелец: GtkLayout

Флаги: Чтение / Запись

Разрешенные значения: <= G_MAXINT

Значение по умолчанию: 100

Подробное описание свойств дочерних элементов

Свойство “x” дочернего элемента

  “x”                        int

Позиция X дочернего виджета.

Владелец: GtkLayout

Флаги: Чтение / Запись

Значение по умолчанию: 0

Свойство “y” дочернего элемента

  “y”                        int

Позиция Y дочернего виджета.

Владелец: GtkLayout

Флаги: Чтение / Запись

Значение по умолчанию: 0

См. также

GtkDrawingArea, GtkFixed

© 2005–2020 The GNOME Project
Licensed under the GNU Lesser General Public License version 2.1 or later.
https://developer.gnome.org/gtk3/3.24/GtkLayout.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API