Spec-Zone.ru › GTK 4.0

GtkComboBoxText

GtkComboBoxText — Простой комбинированный список только с текстом

Функции

GtkWidget * gtk_combo_box_text_new ()
GtkWidget * gtk_combo_box_text_new_with_entry ()
void gtk_combo_box_text_append ()
void gtk_combo_box_text_prepend ()
void gtk_combo_box_text_insert ()
void gtk_combo_box_text_append_text ()
void gtk_combo_box_text_prepend_text ()
void gtk_combo_box_text_insert_text ()
void gtk_combo_box_text_remove ()
void gtk_combo_box_text_remove_all ()
char * gtk_combo_box_text_get_active_text ()

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

GtkComboBoxText

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

    GObject
    ╰── GInitiallyUnowned
        ╰── GtkWidget
            ╰── GtkComboBox
                ╰── GtkComboBoxText

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

GtkComboBoxText реализует GtkAccessible, GtkBuildable, GtkConstraintTarget, GtkCellLayout и GtkCellEditable.

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

#include <gtk/gtk.h>

Описание

GtkComboBoxText — это простая разновидность GtkComboBox, которая скрывает сложность модели-представления для простых случаев использования только с текстом.

Для создания GtkComboBoxText используйте gtk_combo_box_text_new() или gtk_combo_box_text_new_with_entry().

Добавить элементы в GtkComboBoxText можно с помощью gtk_combo_box_text_append_text(), gtk_combo_box_text_insert_text() или gtk_combo_box_text_prepend_text(), а удалить — с помощью gtk_combo_box_text_remove().

Если GtkComboBoxText содержит поле ввода (через свойство «has-entry»), его содержимое можно получить с помощью gtk_combo_box_text_get_active_text(). Само поле ввода можно получить, вызвав gtk_bin_get_child() в комбинированном списке.

Не следует вызывать gtk_combo_box_set_model() или пытаться добавить дополнительные ячейки в этот комбинированный список через интерфейс GtkCellLayout.

GtkComboBoxText как GtkBuildable

Реализация GtkComboBoxText интерфейса GtkBuildable поддерживает добавление элементов напрямую с помощью элемента <items> и указания элементов <item> для каждого элемента. Каждый элемент <item> может указывать «id», соответствующий добавленному тексту, а также поддерживает обычные атрибуты перевода «translatable», «context» и «comments».

Вот фрагмент определения пользовательского интерфейса, указывающий элементы GtkComboBoxText:

Узлы CSS

<object class="GtkComboBoxText">
  <items>
    <item translatable="yes" id="factory">Factory</item>
    <item translatable="yes" id="home">Home</item>
    <item translatable="yes" id="subway">Subway</item>
  </items>
</object>

GtkComboBoxText имеет один узел CSS с именем combobox. Он добавляет класс стиля .combo к основным узлам CSS своих дочерних элементов ввода и кнопки, и класс .linked к узлу своего внутреннего поля.

Функции

gtk_combo_box_text_new ()

GtkWidget *
gtk_combo_box_text_new (void);

Создаёт новый GtkComboBoxText, который является GtkComboBox, просто отображающим строки.

Возвращает

Новый GtkComboBoxText

gtk_combo_box_text_new_with_entry ()

GtkWidget *
gtk_combo_box_text_new_with_entry (void);

Создаёт новый GtkComboBoxText, который является GtkComboBox, просто отображающим строки. Созданный с помощью этой функции combobox имеет поле ввода.

Возвращает

новый GtkComboBoxText

gtk_combo_box_text_append ()

void
gtk_combo_box_text_append (GtkComboBoxText *combo_box,
                           const char *id,
                           const char *text);

Добавляет text в список строк, хранящихся в combo_box . Если id не NULL, то оно используется в качестве идентификатора строки.

Это эквивалентно вызову gtk_combo_box_text_insert() с позицией -1.

Параметры

combo_box

A GtkComboBoxText

id

строковый идентификатор для этого значения, или NULL.

[allow-none]

text

Строка

gtk_combo_box_text_prepend ()

void
gtk_combo_box_text_prepend (GtkComboBoxText *combo_box,
                            const char *id,
                            const char *text);

Вставляет text в начало списка строк, хранящихся в combo_box . Если id не NULL, то оно используется в качестве идентификатора строки.

Это эквивалентно вызову gtk_combo_box_text_insert() с позицией 0.

Параметры

combo_box

A GtkComboBox

id

строковый идентификатор для этого значения, или NULL.

[allow-none]

text

строка

gtk_combo_box_text_insert ()

void
gtk_combo_box_text_insert (GtkComboBoxText *combo_box,
                           int position,
                           const char *id,
                           const char *text);

Вставляет text на позицию position в список строк, хранящихся в combo_box . Если id не NULL, то оно используется в качестве идентификатора строки. Смотрите «id-column».

Если position отрицательно, то text добавляется в конец.

Параметры

combo_box

A GtkComboBoxText

position

Индекс для вставки text

id

строковый идентификатор для этого значения, или NULL.

[allow-none]

text

Строка для отображения

gtk_combo_box_text_append_text ()

void
gtk_combo_box_text_append_text (GtkComboBoxText *combo_box,
                                const char *text);

Добавляет text в список строк, хранящихся в combo_box .

Это эквивалентно вызову gtk_combo_box_text_insert_text() с позицией -1.

Параметры

combo_box

A GtkComboBoxText

text

Строка

gtk_combo_box-text-prepend-text ()

void
gtk_combo_box_text_prepend_text (GtkComboBoxText *combo_box,
                                 const char *text);

Добавляет text в начало списка строк, хранящихся в combo_box .

Это эквивалентно вызову gtk_combo_box_text_insert_text() с позицией 0.

Параметры

combo_box

A GtkComboBox

text

Строка

gtk_combo_box_text_insert_text ()

void
gtk_combo_box_text_insert_text (GtkComboBoxText *combo_box,
                                int position,
                                const char *text);

Вставляет text на позицию position в список строк, хранящихся в combo_box .

Если position отрицательно, то text добавляется в конец.

Это эквивалентно вызову gtk_combo_box_text_insert() со строковым идентификатором NULL.

Параметры

combo_box

A GtkComboBoxText

position

Индекс для вставки text

text

Строка

gtk_combo_box_text_remove ()

void
gtk_combo_box_text_remove (GtkComboBoxText *combo_box,
                           int position);

Удаляет строку на позиции position из combo_box .

Параметры

combo_box

A GtkComboBox

position

Индекс удаляемого элемента

gtk_combo_box_text_remove_all ()

void
gtk_combo_box_text_remove_all (GtkComboBoxText *combo_box);

Удаляет все текстовые записи из combobox.

Параметры

combo_box

A GtkComboBoxText

gtk_combo_box_text_get_active_text ()

char *
gtk_combo_box_text_get_active_text (GtkComboBoxText *combo_box);

Возвращает текущую активную строку в combo_box, или NULL, если ничего не выбрано. Если combo_box содержит запись, эта функция вернёт её содержимое (которое необязательно является элементом списка).

Параметры

combo_box

A GtkComboBoxText

Возвращает

новую строку, содержащую текущий активный текст. Требуется освободить с помощью g_free().

[nullable][transfer full]

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

GtkComboBoxText

typedef struct _GtkComboBoxText GtkComboBoxText;

См. также

GtkComboBox

© 2005–2020 The GNOME Project
Licensed under the GNU Lesser General Public License version 2.1 or later.
https://developer-old.gnome.org/gtk4/4.0/GtkComboBoxText.html

Spec-Zone.ru

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