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 () |
Типы и значения
Иерархия объектов
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 | ||
id | строковый идентификатор для этого значения, или | [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 | ||
id | строковый идентификатор для этого значения, или | [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 | ||
position | Индекс для вставки | |
id | строковый идентификатор для этого значения, или | [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 | ||
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 | ||
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 | ||
position | Индекс для вставки | |
text | Строка |
gtk_combo_box_text_remove ()
void gtk_combo_box_text_remove (GtkComboBoxText *combo_box,int position);
Удаляет строку на позиции position из combo_box .
Параметры
combo_box | ||
position | Индекс удаляемого элемента |
gtk_combo_box_text_remove_all ()
void
gtk_combo_box_text_remove_all (GtkComboBoxText *combo_box); Удаляет все текстовые записи из combobox.
Параметры
combo_box |
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 |
Возвращает
новую строку, содержащую текущий активный текст. Требуется освободить с помощью g_free().
[nullable][transfer full]
Типы и значения
GtkComboBoxText
typedef struct _GtkComboBoxText GtkComboBoxText;
См. также
© 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