GTK+ 2.0 Tutorial |
||
---|---|---|
Разные виджеты (Miscellaneous Widgets) |
Ярлыки в GTK используются часто и они достаточно просты. Ярлыки не создают никаких сигналов ассоциированных с X window. Если вы хотите перехватить сигнал, то поместите ярлык в EventBox widget или Button widget.
Для создания нового ярлыка воспользуйтесь:
GtkWidget *gtk_label_new( const char *str );
GtkWidget *gtk_label_new_with_mnemonic( const char *str );
|
Единственным параметром является строка для отображения.
Для изменения текста ярлыка после создания, воспользуйтесь функцией:
void gtk_label_set_text( GtkLabel *label,
const char *str );
|
Первый аргумент - предварительно созданный ярлык (приведение с использованием макрокоманды GTK_LABEL()), а второй - новая строка.
Пространство, необходимое для новой строки будет автоматически откорректировано если нужно. Вы можете использовать многострочные ярлыки, помещая в конец каждой строки знак перевода строки.
Для нахождения текущей строки, используйте:
const gchar* gtk_label_get_text( GtkLabel *label );
|
Не делайте пустой возвращённую строку, это внутреннее использование GTK.
Текст ярлыка выравнивается с помощью:
void gtk_label_set_justify( GtkLabel *label,
GtkJustification jtype );
|
Значение jtype:
GTK_JUSTIFY_LEFT
GTK_JUSTIFY_RIGHT
GTK_JUSTIFY_CENTER (the default)
GTK_JUSTIFY_FILL
|
Виджет ярлык может автоматически создавать оболочку для линии текста. Это активизируется так:
void gtk_label_set_line_wrap (GtkLabel *label,
gboolean wrap);
|
Аргумент wrap принимает значение TRUE или FALSE.
Если вы хотите подчеркнуть ваш ярлык, то вы можете установить образец:
void gtk_label_set_pattern (GtkLabel *label,
const gchar *pattern);
|
Аргумент pattern указывает как должно выглядеть подчеркивание. Оно может состоять из символов подчеркивания и пробелов. Каждый символ подчеркивается согласно образцу. Например, строка "__ __" подчеркнула бы первые два символа и последние.
Ниже дан короткий пример для иллюстрации этих функций. Этот пример использует виджеты рамки для лучшего стиля оформления ярлыков. Сейчас вы можете проигнорировать их, но позже к ним прийдется вернуться в секции Frame.
В GTK + 2.0, тексты ярлыков могут содержать разметку для шрифта и другие атрибуты изменения текста, а также текст ярлыка может быть выделен (для копирования и вставки). Эти расширенные особенности здесь объясняться не будут.
Example |
|
Arrows |