Prev

Up

Home

GTK+ Reference Manual

Next

Top  |  Description  |  Object Hierarchy  |  Implemented Interfaces  |  Properties  |  Style Properties  |  Signals

GtkScale

GtkScale Базовый класс для GtkHScale и GtkVScale

Краткое описание

#include <gtk/gtk.h> GtkScale; void gtk_scale_set_digits (GtkScale *scale, gint digits); void gtk_scale_set_draw_value (GtkScale *scale, gboolean draw_value); void gtk_scale_set_value_pos (GtkScale *scale, GtkPositionType pos); gint gtk_scale_get_digits (GtkScale *scale); gboolean gtk_scale_get_draw_value (GtkScale *scale); GtkPositionType gtk_scale_get_value_pos (GtkScale *scale); PangoLayout* gtk_scale_get_layout (GtkScale *scale); void gtk_scale_get_layout_offsets (GtkScale *scale, gint *x, gint *y);

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

GObject +----GInitiallyUnowned +----GtkObject +----GtkWidget +----GtkRange +----GtkScale +----GtkHScale +----GtkVScale

Реализуемые интерфейсы

GtkScale реализует AtkImplementorIface.

Свойства

"digits" gint : Read / Write "draw-value" gboolean : Read / Write "value-pos" GtkPositionType : Read / Write

Свойства стиля

"slider-length" gint : Read "value-spacing" gint : Read

Сигналы

"format-value" gchar* user_function (GtkScale *scale, gdouble arg1, gpointer user_data) : Run last

Описание

GtkScale это слайдер управления используемый для выбора цифровых значений. Для его использования, вам вероятно понадобится изучить методы его базового класса GtkRange, в дополнение к непосредственно методам GtkScale. Для выбора значений диапазона, обычно используется gtk_range_set_value(). Для определения изменения значения, используется сигнал "value_changed".

GtkScale виджет это абстрактный класс, используемый только для порождения подклассов GtkHScale и GtkVScale. Для создания виджета масштаба, вызовите gtk_hscale_new_with_range() или gtk_vscale_new_with_range().

Детали

GtkScale

typedef struct _GtkScale GtkScale;

GtkScale структура содержит следующие поля. (Эти поля должны рассматриваться только для чтения. Они никогда не устанавливаются приложением.)

guint draw_value;

Не ноль, если текущем значение масштаба отображается рядом со слайдером.

guint value_pos;

Позиция в которой отображено текстовое значение, выбирается из GtkPositionType.


gtk_scale_set_digits ()

void gtk_scale_set_digits (GtkScale *scale, gint digits);

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

scale :

GtkScale.

digits :

Количество отображаемых десятичных, например используйте 1 для отображения 1.0, или 2 для отображения 1.00 и т.д..


gtk_scale_set_draw_value ()

void gtk_scale_set_draw_value (GtkScale *scale, gboolean draw_value);

Определяет отображается ли текущеме значение как строка рядом со слайдером.

scale :

GtkScale.

draw_value :

булево.


gtk_scale_set_value_pos ()

void gtk_scale_set_value_pos (GtkScale *scale, GtkPositionType pos);

Устанавливает позицию в которой отображается текущеме значение.

scale :

GtkScale.

pos :

Позиция в которой отображается текущеме значение.


gtk_scale_get_digits ()

gint        gtk_scale_get_digits            (GtkScale *scale);

Определяет количество десятичных отображаемых в значении.

scale :

GtkScale.

Возвращает:

Количество десятичных отображаемых в значении.


gtk_scale_get_draw_value ()

gboolean    gtk_scale_get_draw_value        (GtkScale *scale);

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

scale :

GtkScale.

Возвращает:

Отображается ли текущеме значение как строка.


gtk_scale_get_value_pos ()

GtkPositionType gtk_scale_get_value_pos     (GtkScale *scale);

Определяет позицию в которой отображается текущеме значение.

scale :

GtkScale.

Возвращает:

Позиция в которой отображается текущеме значение.


gtk_scale_get_layout ()

PangoLayout* gtk_scale_get_layout           (GtkScale *scale);

Определяет PangoLayout используемый для отображения масштаба. Возвращаемым объектом владеет виджет масштаба поэтому он не должен освобождаться вызывающим.

scale :

GtkScale

Возвращает:

PangoLayout для этого масштаба, или NULL если свойство draw_value равно FALSE.

Начиная с версии 2.4


gtk_scale_get_layout_offsets ()

void gtk_scale_get_layout_offsets (GtkScale *scale, gint *x, gint *y);

Определяет координаты где будет отображен PangoLayout представляющий текст в виджете масштаба. Помните, при использовании PangoLayout функции вы должны конвертировать в и из пикселей используя PANGO_PIXELS() или PANGO_SCALE.

Если свойство draw_value равно FALSE, возвращаемые значения не определены.

scale :

GtkScale

x :

X смещение, или NULL

y :

Y смещение, или NULL

Начиная с версии 2.4

Детали свойств

Свойство "digits"

  "digits"               gint                  : Read / Write

Количество десятичных отображаемых в значении.

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

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


Свойство "draw-value"

  "draw-value"           gboolean              : Read / Write

Должно ли значение отображаться как строка рядом со слайдером.

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


Свойство "value-pos"

  "value-pos"            GtkPositionType       : Read / Write

Позиция в которой отображается текущеме значение.

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

Детали свойств стиля

Свойство стиля "slider-length"

  "slider-length"        gint                  : Read

Длина слайдера.

Допустимые значения: >= 0

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


Свойство стиля "value-spacing"

  "value-spacing"        gint                  : Read

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

Допустимые значения: >= 0

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

Детали сигналов

Сигнал "format-value"

gchar* user_function (GtkScale *scale, gdouble arg1, gpointer user_data) : Run last

Сигнал который позволяет вам изменять отображаемое значение масштаба. Подключите обработчик сигнала который возвращает строку представляющую value. Эта строка будет использоваться для отображения значения масштаба. Вот пример обработчика сигнала который отображает значение 1.0 как "-->1.0<--".

static gchar* format_value_callback (GtkScale *scale, gdouble value) { return g_strdup_printf ("-->%0.*g<--", gtk_scale_get_digits (scale), value); }

scale :

Объект получающий сигнал.

arg1 :

user_data :

Данные устанавливаемые при подключении обработчика сигнала.

Возвращает:

Строка представляющая value