Spec-Zone.ru › GTK 3.20

GtkFrame

GtkFrame — Контейнер с декоративной рамкой и необязательной надписью

Функции

GtkWidget * gtk_frame_new ()
void gtk_frame_set_label ()
void gtk_frame_set_label_widget ()
void gtk_frame_set_label_align ()
void gtk_frame_set_shadow_type ()
const gchar * gtk_frame_get_label ()
void gtk_frame_get_label_align ()
GtkWidget * gtk_frame_get_label_widget ()
GtkShadowType gtk_frame_get_shadow_type ()

Свойства

gchar * label Чтение / Запись
GtkWidget * label-widget Чтение / Запись
gfloat label-xalign Чтение / Запись
gfloat label-yalign Чтение / Запись
GtkShadowType shadow-type Чтение / Запись

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

struct GtkFrame
struct GtkFrameClass

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

    GObject
    ╰── GInitiallyUnowned
        ╰── GtkWidget
            ╰── GtkContainer
                ╰── GtkBin
                    ╰── GtkFrame
                        ╰── GtkAspectFrame

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

GtkFrame реализует AtkImplementorIface и GtkBuildable.

Файлы заголовков

#include <gtk/gtk.h>

Описание

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

GtkFrame как GtkBuildable

Реализация GtkFrame интерфейса GtkBuildable поддерживает размещение дочернего элемента в позиции надписи путем указания “label” в качестве атрибута “type” элемента <child>. Обычный дочерний элемент содержимого может быть задан без указания атрибута типа <child>.

Пример фрагмента определения пользовательского интерфейса с GtkFrame:

Узлы CSS

<object class="GtkFrame">
  <child type="label">
    <object class="GtkLabel" id="frame-label"/>
  </child>
  <child>
    <object class="GtkEntry" id="frame-content"/>
  </child>
</object>

GtkFrame имеет основной узел CSS с именем frame и подчинённый узел с именем border. Узел border используется для отрисовки видимой границы. С основным узлом может использоваться класс стиля .flat.

Функции

gtk_frame_new ()

GtkWidget *
gtk_frame_new (const gchar *label);

Создаёт новый GtkFrame с необязательной меткой label. Если label равен NULL, метка опускается.

Параметры

label

текст, используемый в качестве метки рамки.

[allow-none]

Возвращает

новый виджет GtkFrame

gtk_frame_set_label ()

void
gtk_frame_set_label (GtkFrame *frame,
                     const gchar *label);

Устанавливает текст метки. Если label равен NULL, текущая метка удаляется.

Параметры

frame

GtkFrame

label

текст, используемый в качестве метки рамки.

[allow-none]

gtk_frame_set_label_widget ()

void
gtk_frame_set_label_widget (GtkFrame *frame,
                            GtkWidget *label_widget);

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

Параметры

frame

GtkFrame

label_widget

новый виджет метки.

[nullable]

gtk_frame_set_label_align ()

void
gtk_frame_set_label_align (GtkFrame *frame,
                           gfloat xalign,
                           gfloat yalign);

Устанавливает выравнивание метки виджета рамки. Значения по умолчанию для недавно созданной рамки — 0,0 и 0,5.

Параметры

frame

GtkFrame

xalign

Положение метки вдоль верхней кромки виджета. Значение 0,0 соответствует выравниванию по левому краю; 1,0 — по правому.

yalign

Выравнивание метки по вертикали. Значение 0,0 выравнивает метку под рамкой; 1,0 — над рамкой. Если значения точно равны 0,0 или 1,0, зазор в рамке не будет нарисован, поскольку метка будет полностью над или под рамкой.

gtk_frame_set_shadow_type ()

void
gtk_frame_set_shadow_type (GtkFrame *frame,
                           GtkShadowType type);

Устанавливает тип тени для frame .

Параметры

frame

GtkFrame

type

новый тип GtkShadowType

gtk_frame_get_label ()

const gchar *
gtk_frame_get_label (GtkFrame *frame);

Если виджет метки рамки — GtkLabel, возвращает текст в виджете метки. (Рамка будет иметь GtkLabel в качестве виджета метки, если в gtk_frame_new() был передан не-NULL аргумент.)

Параметры

frame

GtkFrame

Возвращает

текст в метке или NULL, если виджета метки не было или виджет метки не был GtkLabel. Эта строка принадлежит GTK+ и не должна изменяться или освобождаться.

[nullable]

gtk_frame_get_label_align ()

void
gtk_frame_get_label_align (GtkFrame *frame,
                           gfloat *xalign,
                           gfloat *yalign);

Извлекает X и Y выравнивание метки рамки. См. gtk_frame_set_label_align().

Параметры

frame

GtkFrame

xalign

место для хранения X выравнивания метки рамки или NULL.

[out][allow-none]

yalign

место для хранения X выравнивания метки рамки или NULL.

[out][allow-none]

gtk_frame_get_label_widget ()

GtkWidget *
gtk_frame_get_label_widget (GtkFrame *frame);

Извлекает виджет метки для рамки. См. gtk_frame_set_label_widget().

Параметры

frame

GtkFrame

Возвращает

виджет метки или NULL, если его нет.

[nullable][transfer none]

gtk_frame_get_shadow_type ()

GtkShadowType
gtk_frame_get_shadow_type (GtkFrame *frame);

Извлекает тип тени рамки. См. gtk_frame_set_shadow_type().

Параметры

frame

GtkFrame

Возвращает

текущий тип тени рамки.

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

struct GtkFrame

struct GtkFrame;

struct GtkFrameClass

struct GtkFrameClass {
  GtkBinClass parent_class;


  void (*compute_child_allocation) (GtkFrame *frame,
                                    GtkAllocation *allocation);
};

Члены

compute_child_allocation ()

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

Свойство “label”

  “label”                    gchar *

Текст метки рамки.

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

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

Свойство “label-widget”

  “label-widget”             GtkWidget *

Элемент управления для отображения вместо обычной метки рамки.

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

Свойство “label-xalign”

  “label-xalign”             gfloat

Горизонтальное выравнивание метки.

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

Допустимые значения: [0,1]

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

Свойство “label-yalign”

  “label-yalign”             gfloat

Вертикальное выравнивание метки.

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

Допустимые значения: [0,1]

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

Свойство “shadow-type”

  “shadow-type”              GtkShadowType

Вид границы рамки.

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

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

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

Spec-Zone.ru

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