GtkEntry
GtkEntry — Поле ввода текста в одну строку
Функции
Свойства
| gchar * | secondary-icon-name | Чтение / Запись |
| GdkPixbuf * | secondary-icon-pixbuf | Чтение / Запись |
| gboolean | secondary-icon-sensitive | Чтение / Запись |
| gchar * | secondary-icon-stock | Чтение / Запись |
| GtkImageType | secondary-icon-storage-type | Чтение |
| gchar * | secondary-icon-tooltip-markup | Чтение / Запись |
| gchar * | secondary-icon-tooltip-text | Чтение / Запись |
| gint | selection-bound | Чтение |
| GtkShadowType | shadow-type | Чтение / Запись |
| PangoTabArray * | tabs | Чтение / Запись |
| gchar * | text | Чтение / Запись |
| guint | text-length | Чтение |
| gboolean | truncate-multiline | Чтение / Запись |
| gboolean | visibility | Чтение / Запись |
| gint | width-chars | Чтение / Запись |
| gfloat | xalign | Чтение / Запись |
Свойства стиля
| gboolean | icon-prelight | Чтение |
| GtkBorder * | inner-border | Чтение |
| guint | invisible-char | Чтение |
| GtkBorder * | progress-border | Чтение |
Сигналы
| void | activate | Действие |
| void | backspace | Действие |
| void | copy-clipboard | Действие |
| void | cut-clipboard | Действие |
| void | delete-from-cursor | Действие |
| void | icon-press | Выполнить последним |
| void | icon-release | Выполнить последним |
| void | insert-at-cursor | Действие |
| void | move-cursor | Действие |
| void | paste-clipboard | Действие |
| void | populate-popup | Выполнить последним |
| void | preedit-changed | Действие |
| void | toggle-overwrite | Действие |
Типы и значения
| struct | GtkEntry |
| struct | GtkEntryClass |
| enum | GtkEntryIconPosition |
| enum | GtkInputPurpose |
| enum | GtkInputHints |
Иерархия объектов
GObject ╰── GInitiallyUnowned ╰── GtkWidget ╰── GtkEntry ├── GtkSearchEntry ╰── GtkSpinButton
Реализованные интерфейсы
GtkEntry реализует AtkImplementorIface, GtkBuildable, GtkEditable и GtkCellEditable.
Файлы заголовков
#include <gtk/gtk.h>
Описание
Виджет GtkEntry — это однострочный виджет для ввода текста. По умолчанию поддерживается довольно большой набор сочетаний клавиш. Если введённый текст длиннее, чем выделенная область виджета, виджет будет прокручиваться так, чтобы позиция курсора была видна.
При использовании поля для паролей и другой конфиденциальной информации, оно может быть переведено в «режим пароля» с помощью gtk_entry_set_visibility(). В этом режиме введённый текст отображается с помощью «невидимого» символа. По умолчанию GTK+ выбирает лучший невидимый символ, доступный в текущем шрифте, но его можно изменить с помощью gtk_entry_set_invisible_char(). Начиная с версии 2.16, GTK+ отображает предупреждение, когда Caps Lock или методы ввода могут помешать вводу текста в поле пароля. Предупреждение можно отключить с помощью свойства «caps-lock-warning».
Начиная с 2.16, GtkEntry имеет возможность отображать информацию о прогрессе или активности за текстом. Чтобы отобразить такую информацию в поле ввода, используйте gtk_entry_set_progress_fraction() или gtk_entry_set_progress_pulse_step().
Кроме того, GtkEntry может отображать значки по обеим сторонам поля ввода. Эти значки могут быть активными при нажатии, могут быть настроены как источник перетаскивания и могут иметь всплывающие подсказки. Для добавления значка используйте gtk_entry_set_icon_from_gicon() или одну из различных других функций, которые устанавливают значок по идентификатору стандартного значка, имени значка или pixbuf. Чтобы вызвать действие при нажатии пользователем на значок, подключитесь к сигналу «icon-press». Чтобы разрешить операции перетаскивания со значка, используйте gtk_entry_set_icon_drag_source(). Чтобы задать всплывающую подсказку для значка, используйте gtk_entry_set_icon_tooltip_text() или соответствующую функцию для разметки.
Обратите внимание, что функциональность или информация, доступная только при нажатии на значок в поле ввода, может быть недоступна для пользователей, которые не могут использовать мышь или другое указывающее устройство. Поэтому рекомендуется, чтобы такая функциональность была также доступна другими способами, например, через контекстное меню поля ввода.
Узлы CSS
GtkEntry имеет основной узел с именем entry. В зависимости от свойств поля, могут появиться стили .read-only и .flat. Также могут использоваться стили .warning и .error с полями.
Когда поле ввода отображает значки, оно добавляет подузлы с именем image и стилями .left или .right, в зависимости от того, где отображается значок.
Когда в поле ввода есть выделение, добавляется поднода с именем selection.
Когда поле ввода отображает прогресс, добавляется поднода с именем progress. Узел имеет стиль .pulse, когда отображаемый прогресс пульсирует.
Узел CSS для контекстного меню также добавляется как поднода ниже entry.
Узлы undershoot используются для отображения индикатора обрезки, когда содержимое прокручено за пределы области видимости. К этим узлам добавляются стили .left и .right в зависимости от того, где отображается индикатор.
При использовании сенсорного ввода и отображении сенсорных маркеров выделения, они используют узлы CSS с именем cursor-handle. Они получают стиль .top или .bottom в зависимости от того, где они отображаются по отношению к выделению. Если есть только один маркер для курсора текста, он получает стиль .insertion-cursor.
Функции
gtk_entry_new ()
GtkWidget *
gtk_entry_new (void); Создаёт новую строку ввода.
Возвращает
новую GtkEntry.
gtk_entry_new_with_buffer ()
GtkWidget *
gtk_entry_new_with_buffer (GtkEntryBuffer *buffer); Создаёт новую строку ввода с указанным буфером текста.
Параметры
buffer | Буфер, который нужно использовать для новой GtkEntry. |
Возвращает
новую GtkEntry
С: 2.18
gtk_entry_get_buffer ()
GtkEntryBuffer *
gtk_entry_get_buffer (GtkEntry *entry); Получает объект GtkEntryBuffer, содержащий текст для данного виджета.
Параметры
entry |
С: 2.18
gtk_entry_set_buffer ()
void gtk_entry_set_buffer (GtkEntry *entry,GtkEntryBuffer *buffer);
Устанавливает объект GtkEntryBuffer, содержащий текст для данного виджета.
Параметры
entry | ||
buffer |
С: 2.18
gtk_entry_set_text ()
void gtk_entry_set_text (GtkEntry *entry,const gchar *text);
Устанавливает текст в виджете на заданное значение, заменяя текущее содержимое.
См. gtk_entry_buffer_set_text().
Параметры
entry | ||
text | новый текст |
gtk_entry_get_text ()
const gchar *
gtk_entry_get_text (GtkEntry *entry); Возвращает содержимое виджета строки ввода. См. также gtk_editable_get_chars().
Эквивалентно:
Параметры
entry |
Возвращает
указатель на содержимое виджета в виде строки. Эта строка указывает на память, выделенную внутри виджета, и не должна освобождаться, изменяться или сохраняться.
gtk_entry_get_text_length ()
guint16
gtk_entry_get_text_length (GtkEntry *entry); Возвращает текущую длину текста в entry .
Эквивалентно:
Параметры
entry |
Возвращает
текущее количество символов в GtkEntry или 0, если их нет.
С: 2.14
gtk_entry_get_text_area ()
void gtk_entry_get_text_area (GtkEntry *entry,GdkRectangle *text_area);
Получает область, где отрисовывается текст строки ввода. Эта функция полезна при отрисовке чего-либо в строке ввода в обратном вызове.
Если строка ввода не реализована, text_area заполняется нулями.
См. также gtk_entry_get_icon_area().
Параметры
entry | ||
text_area | Место для возврата области текста. | [out] |
С: 3.0
gtk_entry_set_visibility ()
void gtk_entry_set_visibility (GtkEntry *entry,gboolean visible);
Устанавливает, отображается ли содержимое строки ввода или нет. Когда видимость установлена в FALSE, символы отображаются как невидимые, и так же будут отображаться при копировании текста из виджета в другое место.
По умолчанию GTK+ выбирает лучший невидимый символ, доступный в текущем шрифте, но его можно изменить с помощью gtk_entry_set_invisible_char().
Обратите внимание, что вам, вероятно, нужно установить “input-purpose” на GTK_INPUT_PURPOSE_PASSWORD или GTK_INPUT_PURPOSE_PIN для информирования методов ввода о назначении этой строки ввода, помимо установки видимости на FALSE.
gtk_entry_set_invisible_char ()
void gtk_entry_set_invisible_char (GtkEntry *entry,gunichar ch);
Устанавливает символ, используемый вместо фактического текста, когда gtk_entry_set_visibility() был вызван для установки видимости текста в FALSE. т.е. это символ, используемый в «режиме пароля», чтобы показать пользователю, сколько символов было введено. По умолчанию GTK+ выбирает лучший невидимый символ, доступный в текущем шрифте. Если вы установите невидимый символ в 0, пользователю не будет выдаваться никакой обратной связи; текста на экране не будет по мере ввода.
Параметры
entry | ||
ch | символ Юникод |
gtk_entry_unset_invisible_char ()
void
gtk_entry_unset_invisible_char (GtkEntry *entry); Снимает невидимый символ, ранее установленный с помощью gtk_entry_set_invisible_char(). Чтобы снова использовался символ по умолчанию.
Параметры
entry |
С: 2.16
gtk_entry_set_max_length ()
void gtk_entry_set_max_length (GtkEntry *entry,gint max);
Устанавливает максимальную разрешённую длину содержимого виджета. Если текущее содержимое длиннее заданной длины, оно будет усечено.
Эквивалентно:
Параметры
entry | ||
max | максимальная длина строки ввода или 0 для отсутствия максимума. (кроме максимальной длины строк). Переданное значение будет ограничено диапазоном 0-65536. |
gtk_entry_get_activates_default ()
gboolean
gtk_entry_get_activates_default (GtkEntry *entry); Возвращает значение, установленное с помощью gtk_entry_set_activates_default().
Параметры
entry | a GtkEntry |
Возвращаемое значение
TRUE, если ввод будет активировать виджет по умолчанию
gtk_entry_get_has_frame ()
gboolean
gtk_entry_get_has_frame (GtkEntry *entry); Возвращает значение, установленное с помощью gtk_entry_set_has_frame().
Параметры
entry | a GtkEntry |
Возвращаемое значение
наличие окаймления у поля ввода
gtk_entry_get_inner_border ()
const GtkBorder *
gtk_entry_get_inner_border (GtkEntry *entry); gtk_entry_get_inner_border устарело начиная с версии 3.4 и не должно использоваться в новом коде.
Используйте стандартные свойства border и padding CSS (через объекты, такие как GtkStyleContext и GtkCssProvider); значение, возвращаемое этой функцией, игнорируется GtkEntry.
Эта функция возвращает свойство “inner-border” поля ввода. См. gtk_entry_set_inner_border() для получения дополнительной информации.
Параметры
entry | a GtkEntry |
Возвращаемое значение
граница GtkBorder поля ввода или NULL, если она не была установлена.
[nullable][transfer none]
С: 2.10
gtk_entry_get_width_chars ()
gint
gtk_entry_get_width_chars (GtkEntry *entry); Возвращает значение, установленное с помощью gtk_entry_set_width_chars().
Параметры
entry | a GtkEntry |
Возвращаемое значение
количество символов для запроса места, или отрицательное значение, если не задано
gtk_entry_get_max_width_chars ()
gint
gtk_entry_get_max_width_chars (GtkEntry *entry); Возвращает желаемую максимальную ширину entry в символах. См. gtk_entry_set_max_width_chars().
Параметры
entry | a GtkEntry |
Возвращаемое значение
максимальная ширина поля ввода в символах
С: 3.12
gtk_entry_set_activates_default ()
void gtk_entry_set_activates_default (GtkEntry *entry,gboolean setting);
Если setting равно TRUE, нажатие клавиши Enter в entry активирует виджет по умолчанию для окна, содержащего поле ввода. Обычно это означает закрытие диалогового окна, содержащего поле ввода, так как виджет по умолчанию, как правило, является одной из кнопок диалогового окна.
(Для экспертов: если setting равно TRUE, поле ввода вызывает gtk_window_activate_default() для окна, содержащего поле ввода, в обработчике по умолчанию для сигнала “activate”.)
gtk_entry_set_has_frame ()
void gtk_entry_set_has_frame (GtkEntry *entry,gboolean setting);
Устанавливает, будет ли у поля ввода окаймление.
Параметры
entry | a GtkEntry | |
setting | новое значение |
gtk_entry_set_inner_border ()
void gtk_entry_set_inner_border (GtkEntry *entry,const GtkBorder *border);
gtk_entry_set_inner_border устарело начиная с версии 3.4 и не должно использоваться в новом коде.
Используйте стандартные свойства border и padding CSS (через объекты, такие как GtkStyleContext и GtkCssProvider); значение, установленное с помощью этой функции, игнорируется GtkEntry.
Устанавливает свойство «inner-border» entry в border или очищает его, если передан NULL. Внутреннее окаймление — это область вокруг текста поля ввода, но внутри его рамки.
Если установлено, это свойство переопределяет свойство стиля inner-border. Переопределение границы, предоставленной стилем, полезно, когда вы хотите выполнить редактирование текста на месте в виджете холста или списка, где точное позиционирование поля ввода по пикселям имеет значение.
С: 2.10
gtk_entry_set_width_chars ()
void gtk_entry_set_width_chars (GtkEntry *entry,gint n_chars);
Изменяет запрос размера поля ввода, чтобы он соответствовал размеру, необходимому для n_chars символов. Обратите внимание, что изменяется запрос размера, размер по-прежнему может зависеть от того, как вы помещаете виджет в контейнеры. Если n_chars равно -1, размер возвращается к стандартному размеру поля ввода.
Параметры
entry | a GtkEntry | |
n_chars | ширина в символах |
gtk_entry_get_invisible_char ()
gunichar
gtk_entry_get_invisible_char (GtkEntry *entry); Возвращает символ, отображаемый вместо реальных символов для полей ввода с отображением, установленным в false. См. gtk_entry_set_invisible_char().
Параметры
entry | a GtkEntry |
Возвращает
текущий скрытый символ или 0, если поле ввода вообще не отображает скрытый текст.
gtk_entry_set_alignment ()
void gtk_entry_set_alignment (GtkEntry *entry,gfloat xalign);
Устанавливает выравнивание содержимого поля ввода. Это контролирует горизонтальное позиционирование содержимого, когда отображаемый текст короче ширины поля ввода.
Параметры
entry | a GtkEntry | |
xalign | Горизонтальное выравнивание от 0 (слева) до 1 (справа). Переворачивается для схем RTL. |
С: 2.4
gtk_entry_get_alignment ()
gfloat
gtk_entry_get_alignment (GtkEntry *entry); Получает значение, установленное функцией gtk_entry_set_alignment().
Параметры
entry | a GtkEntry |
Возвращает
выравнивание
С: 2.4
gtk_entry_set_placeholder_text ()
void gtk_entry_set_placeholder_text (GtkEntry *entry,const gchar *text);
Устанавливает текст, который будет отображаться в entry, когда он пустой и не фокусируется. Это можно использовать для визуального указания ожидаемого содержимого поля ввода GtkEntry.
Обратите внимание, что поскольку текст заполнителя удаляется, когда поле получает фокус, использование этой функции немного проблематично, если полю ввода присваивается начальный фокус в окне. Иногда это можно обойти, отложив первоначальную установку фокуса до момента появления первого события нажатия клавиши.
Параметры
С: 3.2
gtk_entry_get_placeholder_text ()
const gchar *
gtk_entry_get_placeholder_text (GtkEntry *entry); Получает текст, который будет отображаться, когда entry пустой и не фокусируется
Параметры
entry | a GtkEntry |
Возвращает
указатель на текст заполнителя в виде строки. Эта строка указывает на память, выделенную внутри виджета, и не должна освобождаться, изменяться или храниться.
С: 3.2
gtk_entry_set_overwrite_mode ()
void gtk_entry_set_overwrite_mode (GtkEntry *entry,gboolean overwrite);
Устанавливает режим перекрытия текста при вводе в поле ввода GtkEntry.
Параметры
entry | a GtkEntry | |
overwrite | новое значение |
С: 2.14
gtk_entry_get_overwrite_mode ()
gboolean
gtk_entry_get_overwrite_mode (GtkEntry *entry); Получает значение, установленное функцией gtk_entry_set_overwrite_mode().
Параметры
entry | a GtkEntry |
Возвращает
режим перекрытия текста при вводе.
С: 2.14
gtk_entry_get_layout ()
PangoLayout *
gtk_entry_get_layout (GtkEntry *entry); Получает PangoLayout, используемый для отображения поля ввода. Макет полезен, например, для преобразования позиций текста в пиксельные позиции в сочетании с gtk_entry_get_layout_offsets(). Возвращаемый макет принадлежит полю ввода и не должен изменяться или освобождаться вызывающей стороной.
Помните, что текст макета может содержать строку предварительного редактирования, поэтому gtk_entry_layout_index_to_text_index() и gtk_entry_text_index_to_layout_index() необходимы для преобразования байтовых индексов в макете в байтовые индексы в содержимом поля ввода.
Параметры
entry | a GtkEntry |
gtk_entry_get_layout_offsets ()
void gtk_entry_get_layout_offsets (GtkEntry *entry,gint *x,gint *y);
Получает положение PangoLayout, используемого для отображения текста в поле ввода, в координатах виджета. Полезно, если вы хотите выровнять текст в поле ввода с другим текстом, например, при использовании поля ввода для реализации редактируемых ячеек в виджете таблицы.
Также полезно для преобразования событий мыши в координаты внутри PangoLayout, например, для выполнения какого-либо действия, если нажата какая-то часть текста в поле ввода.
Обратите внимание, что по мере прокрутки пользователем поля ввода смещения изменятся; вам необходимо подключиться к сигналу «notify::scroll-offset», чтобы отслеживать это. Помните, что при использовании функций PangoLayout необходимо переводить в пиксели и обратно с помощью PANGO_PIXELS() или PANGO_SCALE.
Учитывайте, что текст макета может содержать строку предварительного редактирования, поэтому необходимы gtk_entry_layout_index_to_text_index() и gtk_entry_text_index_to_layout_index() для преобразования индексов байтов в макете в индексы байтов в содержимое поля ввода.
gtk_entry_layout_index_to_text_index ()
gint gtk_entry_layout_index_to_text_index (GtkEntry *entry,gint layout_index);
Преобразует позицию в содержимом поля ввода (возвращаемое gtk_entry_get_text()) в позицию в PangoLayout поля ввода (возвращаемое gtk_entry_get_layout(), текст которого извлекается через pango_layout_get_text()).
Параметры
entry | a GtkEntry | |
layout_index | индекс байта в тексте макета поля ввода |
Возвращает
индекс байта в содержимом поля ввода
gtk_entry_text-index-to-layout-index ()
gint gtk_entry_text_index_to_layout_index (GtkEntry *entry,gint text_index);
Преобразует позицию в PangoLayout поля ввода (возвращаемое gtk_entry_get_layout()) в позицию в содержимом поля ввода (возвращаемое gtk_entry_get_text()).
Параметры
entry | a GtkEntry | |
text_index | индекс байта в содержимом поля ввода |
Возвращает
индекс байта в тексте макета поля ввода
gtk_entry_set_attributes ()
void gtk_entry_set_attributes (GtkEntry *entry,PangoAttrList *attrs);
Устанавливает PangoAttrList; атрибуты в списке применяются к тексту поля ввода.
Параметры
entry | a GtkEntry | |
attrs |
С момента: 3.6
gtk_entry_get_attributes ()
PangoAttrList *
gtk_entry_get_attributes (GtkEntry *entry); Получает список атрибутов, установленный для поля ввода с помощью gtk_entry_set_attributes(), если таковой имеется.
Параметры
entry | a GtkEntry |
С момента: 3.6
gtk_entry_get_max_length ()
gint
gtk_entry_get_max_length (GtkEntry *entry); Извлекает максимальную разрешенную длину текста в entry. См. gtk_entry_set_max_length().
Это эквивалентно:
entry ├── image.left ├── image.right ├── undershoot.left ├── undershoot.right ├── [selection] ├── [progress[.pulse]] ╰── [window.popup]
Параметры
entry | a GtkEntry |
Возвращает
максимальное разрешенное количество символов в GtkEntry, или 0, если максимального значения нет.
gtk_entry_get_visibility ()
gboolean
gtk_entry_get_visibility (GtkEntry *entry); Извлекает, отображается ли текст в entry. См. gtk_entry_set_visibility().
Параметры
entry | a GtkEntry |
Возвращает
TRUE, если текст в данный момент отображается
gtk_entry_set_completion ()
void gtk_entry_set_completion (GtkEntry *entry,GtkEntryCompletion *completion);
Устанавливает completion в качестве вспомогательного объекта автодополнения для использования с entry . Вся дальнейшая конфигурация механизма автодополнения выполняется с помощью completion, используя API GtkEntryCompletion. Автодополнение отключается, если completion установлено в NULL.
Параметры
entry | A GtkEntry | |
completion | GtkEntryCompletion или | [allow-none] |
С версии: 2.4
gtk_entry_get_completion ()
GtkEntryCompletion *
gtk_entry_get_completion (GtkEntry *entry); Возвращает вспомогательный объект автодополнения, используемый в данный момент entry .
Параметры
entry | A GtkEntry |
Возвращает
Вспомогательный объект автодополнения, используемый в данный момент entry .
[transfer none]
С версии: 2.4
gtk_entry_set_cursor_hadjustment ()
void gtk_entry_set_cursor_hadjustment (GtkEntry *entry,GtkAdjustment *adjustment);
Подключает корректировку к позиции курсора в поле ввода, так что при перемещении курсора корректировка прокручивается, чтобы показать эту позицию. См. gtk_scrolled_window_get_hadjustment() для типичного способа получения корректировки.
Корректировка должна быть в пикселях и в той же системе координат, что и поле ввода.
Параметры
С версии: 2.12
gtk_entry_get_cursor_hadjustment ()
GtkAdjustment *
gtk_entry_get_cursor_hadjustment (GtkEntry *entry); Извлекает горизонтальную корректировку курсора для поля ввода. См. gtk_entry_set_cursor_hadjustment().
Параметры
entry | a GtkEntry |
Возвращает
горизонтальная корректировка курсора, или NULL, если она не установлена.
[transfer none][nullable]
С версии: 2.12
gtk_entry_set-progress-fraction ()
void gtk_entry_set_progress_fraction (GtkEntry *entry,gdouble fraction);
Заставляет индикатор выполнения поля ввода «заполнить» заданную долю полосы. Доля должна находиться в диапазоне от 0,0 до 1,0 включительно.
Параметры
entry | a GtkEntry | |
fraction | доля выполненной задачи |
С версии: 2.16
gtk_entry_get_progress_fraction ()
gdouble
gtk_entry_get_progress_fraction (GtkEntry *entry); Возвращает текущую долю выполненной задачи. См. gtk_entry_set_progress_fraction().
Параметры
entry | a GtkEntry |
Возвращает
доля от 0,0 до 1,0
С версии: 2.16
gtk_entry_set_progress_pulse_step ()
void gtk_entry_set_progress_pulse_step (GtkEntry *entry,gdouble fraction);
Устанавливает долю общей ширины поля ввода для перемещения блока индикатора выполнения при каждом вызове gtk_entry_progress_pulse().
Параметры
entry | a GtkEntry | |
fraction | доля от 0,0 до 1,0 |
С версии: 2.16
gtk_entry_get_progress_pulse_step ()
gdouble
gtk_entry_get_progress_pulse_step (GtkEntry *entry); Извлекает шаг импульса, установленный с помощью gtk_entry_set_progress_pulse_step().
Параметры
entry | a GtkEntry |
Возвращает
доля от 0,0 до 1,0
С версии: 2.16
gtk_entry_progress_pulse ()
void
gtk_entry_progress_pulse (GtkEntry *entry); Указывает на некоторый прогресс, но вы не знаете, насколько. Заставляет индикатор выполнения поля ввода перейти в «режим активности», где блок подпрыгивает вперед и назад. Каждый вызов gtk_entry_progress_pulse() приводит к небольшому перемещению блока (величина перемещения за один импульс определяется с помощью gtk_entry_set_progress_pulse_step()).
Параметры
entry | a GtkEntry |
С версии: 2.16
gtk_entry_im_context_filter_keypress ()
gboolean gtk_entry_im_context_filter_keypress (GtkEntry *entry,GdkEventKey *event);
Разрешить методу ввода GtkEntry внутренне обрабатывать события нажатия и отпускания клавиш. Если эта функция возвращает TRUE, то дальнейшая обработка этого события нажатия клавиши не должна выполняться. См. gtk_im_context_filter_keypress().
Обратите внимание, что вы должны вызывать эту функцию из своего обработчика при переопределении обработки событий клавиш. Это необходимо в случае, когда вам нужно вставить свою собственную обработку клавиш между методом ввода и обработкой событий клавиш по умолчанию для GtkEntry. См. gtk_text_view_reset_im_context() для примера использования.
Параметры
entry | a GtkEntry | |
event | событие нажатия клавиши. | [type Gdk.EventKey] |
Возвращает
TRUE, если метод ввода обработал событие нажатия клавиши.
С версии: 2.22
gtk_entry_reset_im_context ()
void
gtk_entry_reset_im_context (GtkEntry *entry); Сбросьте контекст метода ввода для поля ввода, если это необходимо.
Это может потребоваться в случае, когда изменение буфера может нарушить работу текущего метода ввода.
Параметры
entry | a GtkEntry |
Since: 2.22
gtk_entry_get_tabs ()
PangoTabArray *
gtk_entry_get_tabs (GtkEntry *entry); Возвращает отступы табуляции, установленные для поля ввода с помощью gtk_entry_set_tabs(), если таковые имеются.
Параметры
entry | a GtkEntry |
Возвращаемое значение
отступы табуляции, или NULL, если они не были установлены.
[nullable][transfer none]
Since: 3.10
gtk_entry_set_tabs ()
void gtk_entry_set_tabs (GtkEntry *entry,PangoTabArray *tabs);
Устанавливает массив отступов табуляции PangoTabArray; отступы табуляции в массиве применяются к тексту в поле ввода.
Параметры
entry | a GtkEntry | |
tabs |
Since: 3.10
gtk_entry_set_icon_from_pixbuf ()
void gtk_entry_set_icon_from_pixbuf (GtkEntry *entry,GtkEntryIconPosition icon_pos,GdkPixbuf *pixbuf);
Устанавливает значок, отображаемый в указанной позиции, используя pixbuf.
Если pixbuf равно NULL, значок в указанной позиции не будет отображаться.
Since: 2.16
gtk_entry_set_icon_from_stock ()
void gtk_entry_set_icon_from_stock (GtkEntry *entry,GtkEntryIconPosition icon_pos,const gchar *stock_id);
gtk_entry_set_icon_from_stock устарел с версии 3.10 и не должен использоваться в новых кодах.
Используйте gtk_entry_set_icon_from_icon_name() вместо этого.
Устанавливает значок, отображаемый в поле ввода в заданной позиции, используя изображение из набора значков.
Если stock_id равно NULL, значок в указанной позиции не будет отображаться.
Параметры
Since: 2.16
gtk_entry_set_icon_from_icon_name ()
void gtk_entry_set_icon_from_icon_name (GtkEntry *entry,GtkEntryIconPosition icon_pos,const gchar *icon_name);
Устанавливает значок, отображаемый в поле ввода в заданной позиции, используя текущую тему значков.
Если имя значка неизвестно, отобразится значок «разбитого изображения».
Если icon_name равно NULL, значок в указанной позиции не будет отображаться.
Параметры
Since: 2.16
gtk_entry_set_icon_from_gicon ()
void gtk_entry_set_icon_from_gicon (GtkEntry *entry,GtkEntryIconPosition icon_pos,GIcon *icon);
Устанавливает значок, отображаемый в поле ввода в заданной позиции, используя текущую тему значков. Если значок неизвестен, вместо него отобразится значок «разбитого изображения».
Если icon равно NULL, значок в указанной позиции не будет отображаться.
Параметры
Since: 2.16
gtk_entry_get_icon_storage_type ()
GtkImageType gtk_entry_get_icon_storage_type (GtkEntry *entry,GtkEntryIconPosition icon_pos);
Получает тип представления, используемый значком для хранения данных изображения. Если значок не содержит данных изображения, возвращаемое значение будет GTK_IMAGE_EMPTY.
Параметры
entry | a GtkEntry | |
icon_pos | Положение значка |
Возвращаемое значение
используемое представление изображения
Since: 2.16
gtk_entry_get_icon_pixbuf ()
GdkPixbuf * gtk_entry_get_icon_pixbuf (GtkEntry *entry,GtkEntryIconPosition icon_pos);
Извлекает изображение, используемое для значка.
В отличие от других методов установки и получения данных значка, этот метод будет работать независимо от того, был ли значок установлен с помощью GdkPixbuf, GIcon, стандартного элемента или имени значка.
Параметры
entry | A GtkEntry | |
icon_pos | Позиция значка |
Возвращает
GdkPixbuf, или NULL если для этой позиции не установлен значок.
[transfer none][nullable]
С версии: 2.16
gtk_entry_get_icon_stock ()
const gchar * gtk_entry_get_icon_stock (GtkEntry *entry,GtkEntryIconPosition icon_pos);
gtk_entry_get_icon_stock устарел с версии 3.10 и не должен использоваться в новом коде.
Используйте gtk_entry_get_icon_name() вместо этого.
Извлекает идентификатор stock, используемый для значка, или NULL, если значка нет или если значок был установлен другим методом (например, с помощью pixbuf, имени значка или gicon).
Параметры
entry | A GtkEntry | |
icon_pos | Позиция значка |
Возвращает
Идентификатор stock, или NULL, если значок не установлен или если значок не был установлен из идентификатора stock
С версии: 2.16
gtk_entry_get_icon_name ()
const gchar * gtk_entry_get_icon_name (GtkEntry *entry,GtkEntryIconPosition icon_pos);
Извлекает имя значка, используемое для значка, или NULL, если значка нет или если значок был установлен другим методом (например, с помощью pixbuf, stock или gicon).
Параметры
entry | A GtkEntry | |
icon_pos | Позиция значка |
Возвращает
Имя значка, или NULL, если значок не установлен или если значок не был установлен из имени значка.
[nullable]
С версии: 2.16
gtk_entry_get_icon_gicon ()
GIcon * gtk_entry_get_icon_gicon (GtkEntry *entry,GtkEntryIconPosition icon_pos);
Извлекает GIcon, используемый для значка, или NULL, если значка нет или если значок был установлен другим методом (например, с помощью stock, pixbuf или имени значка).
Параметры
entry | A GtkEntry | |
icon_pos | Позиция значка |
Возвращает
GIcon, или NULL, если значок не установлен или если значок не является GIcon.
[transfer none][nullable]
С версии: 2.16
gtk_entry_set_icon_activatable ()
void gtk_entry_set_icon_activatable (GtkEntry *entry,GtkEntryIconPosition icon_pos,gboolean activatable);
Устанавливает, является ли значок активируемым.
Параметры
С версии: 2.16
gtk_entry_get_icon_activatable ()
gboolean gtk_entry_get_icon_activatable (GtkEntry *entry,GtkEntryIconPosition icon_pos);
Возвращает, является ли значок активируемым.
Параметры
entry | a GtkEntry | |
icon_pos | Позиция значка |
Возвращает
TRUE если значок активируемый.
С версии: 2.16
gtk_entry_set_icon_sensitive ()
void gtk_entry_set_icon_sensitive (GtkEntry *entry,GtkEntryIconPosition icon_pos,gboolean sensitive);
Устанавливает чувствительность для указанного значка.
Параметры
entry | A GtkEntry | |
icon_pos | Позиция значка | |
sensitive | Указывает, должен ли значок отображаться как чувствительный или нечувствительный |
С версии: 2.16
gtk_entry_get_icon_sensitive ()
gboolean gtk_entry_get_icon_sensitive (GtkEntry *entry,GtkEntryIconPosition icon_pos);
Возвращает, отображается ли значок как чувствительный или нечувствительный.
Параметры
entry | a GtkEntry | |
icon_pos | Позиция значка |
Возвращает
TRUE если значок чувствительный.
С версии: 2.16
gtk_entry_get_icon_at_pos ()
gint gtk_entry_get_icon_at_pos (GtkEntry *entry,gint x,gint y);
Находит значок в заданной позиции и возвращает его индекс. Координаты позиции задаются относительно левого верхнего угла entry. Если x, y не находится внутри значка, возвращается -1. Эта функция предназначена для использования в обработчике сигнала “query-tooltip”.
Параметры
entry | a GtkEntry | |
x | координата x позиции, которую нужно найти | |
y | координата y позиции, которую нужно найти |
Возвращает
индекс значка в заданной позиции или -1
С версии: 2.16
gtk_entry_set_icon_tooltip_text ()
void gtk_entry_set_icon_tooltip_text (GtkEntry *entry,GtkEntryIconPosition icon_pos,const gchar *tooltip);
Устанавливает tooltip в качестве содержимого всплывающей подсказки для значка в указанной позиции.
Используйте NULL для tooltip, чтобы удалить существующую всплывающую подсказку.
См. также gtk_widget_set_tooltip_text() и gtk_entry_set_icon_tooltip_markup().
Параметры
С: 2.16
gtk_entry_get_icon_tooltip_text ()
gchar * gtk_entry_get_icon_tooltip_text (GtkEntry *entry,GtkEntryIconPosition icon_pos);
Возвращает содержимое всплывающей подсказки для значка в указанной позиции в entry .
Параметры
entry | a GtkEntry | |
icon_pos | позиция значка |
Возвращаемое значение
текст всплывающей подсказки или NULL. Освободите возвращённую строку с помощью g_free() по завершении работы.
[nullable]
С: 2.16
gtk_entry_set_icon_tooltip_markup ()
void gtk_entry_set_icon_tooltip_markup (GtkEntry *entry,GtkEntryIconPosition icon_pos,const gchar *tooltip);
Устанавливает tooltip в качестве содержимого всплывающей подсказки для значка в указанной позиции. tooltip предполагается, что он отформатирован с использованием языка разметки текста Pango.
Используйте NULL для tooltip, чтобы удалить существующую всплывающую подсказку.
См. также gtk_widget_set_tooltip_markup() и gtk_entry_set_icon_tooltip_text().
Параметры
С: 2.16
gtk_entry_get_icon_tooltip_markup ()
gchar * gtk_entry_get_icon_tooltip_markup (GtkEntry *entry,GtkEntryIconPosition icon_pos);
Возвращает содержимое всплывающей подсказки для значка в указанной позиции в entry .
Параметры
entry | a GtkEntry | |
icon_pos | позиция значка |
Возвращаемое значение
текст всплывающей подсказки или NULL. Освободите возвращённую строку с помощью g_free() по завершении работы.
[nullable]
С: 2.16
gtk_entry_set_icon_drag_source ()
void gtk_entry_set_icon_drag_source (GtkEntry *entry,GtkEntryIconPosition icon_pos,GtkTargetList *target_list,GdkDragAction actions);
Настраивает значок в заданной позиции таким образом, что GTK+ начнёт операцию перетаскивания, когда пользователь нажмёт и перетащит значок.
Для обработки операции перетаскивания необходимо подключиться к обычному сигналу “drag-data-get” (или, возможно, “drag-data-delete”) и использовать gtk_entry_get_current_icon_drag_source() в обработчике сигнала, чтобы узнать, был ли запуск перетаскивания из значка.
По умолчанию GTK+ использует значок в качестве значка перетаскивания. Вы можете использовать сигнал “drag-begin”, чтобы задать другой значок. Обратите внимание, что вам необходимо использовать g_signal_connect_after(), чтобы гарантировать, что обработчик сигнала выполняется после обработчика по умолчанию.
Параметры
entry | a GtkEntry | |
icon_pos | позиция значка | |
target_list | цели (форматы данных), в которых данные могут быть предоставлены | |
actions | маска битов разрешённых действий перетаскивания |
С: 2.16
gtk_entry_get_current_icon_drag_source ()
gint
gtk_entry_get_current_icon_drag_source
(GtkEntry *entry); Возвращает индекс значка, который является источником текущей операции перетаскивания, или -1.
Эта функция предназначена для использования в обратном вызове “drag-data-get”.
Параметры
entry | a GtkEntry |
Возвращаемое значение
индекс значка, являющегося источником текущей операции перетаскивания, или -1.
С: 2.16
gtk_entry_get_icon_area ()
void gtk_entry_get_icon_area (GtkEntry *entry,GtkEntryIconPosition icon_pos,GdkRectangle *icon_area);
Возвращает область, в которой рисуется значок entry в позиции icon_pos. Эта функция полезна при рисовании чего-либо в поле ввода в обратном вызове отрисовки.
Если поле ввода не реализовано или не имеет значка в данной позиции, icon_area заполняется нулями.
См. также gtk_entry_get_text_area()
Параметры
entry | A GtkEntry | |
icon_pos | Позиция значка | |
icon_area | Место для возврата области значка. | [out] |
С: 3.0
gtk_entry_set_input_purpose ()
void gtk_entry_set_input_purpose (GtkEntry *entry,GtkInputPurpose purpose);
Устанавливает свойство “input-purpose”, которое может использоваться экранными клавиатурами и другими методами ввода для изменения их поведения.
Параметры
entry | a GtkEntry | |
purpose | назначение |
Since: 3.6
gtk_entry_get_input_purpose ()
GtkInputPurpose
gtk_entry_get_input_purpose (GtkEntry *entry); Получает значение свойства “input-purpose”.
Параметры
entry | a GtkEntry |
Since: 3.6
gtk_entry_set_input_hints ()
void gtk_entry_set_input_hints (GtkEntry *entry,GtkInputHints hints);
Устанавливает свойство “input-hints”, которое позволяет методам ввода более точно настраивать своё поведение.
Параметры
entry | a GtkEntry | |
hints | подсказки |
Since: 3.6
gtk_entry_get_input_hints ()
GtkInputHints
gtk_entry_get_input_hints (GtkEntry *entry); Получает значение свойства “input-hints”.
Параметры
entry | a GtkEntry |
Since: 3.6
gtk_entry_grab_focus_without_selecting ()
void
gtk_entry_grab_focus_without_selecting
(GtkEntry *entry); Приводит entry к получению фокуса клавиатуры.
Ведёт себя как gtk_widget_grab_focus(), за исключением того, что не выбирает содержимое поля ввода. Вызов этой функции необходим только для специальных полей, в которых пользователь обычно не хочет заменять всё содержимое, например, для полей поиска по мере ввода.
Параметры
entry | a GtkEntry |
Since: 3.16
Типы и значения
struct GtkEntry
struct GtkEntry;
struct GtkEntryClass
struct GtkEntryClass {
GtkWidgetClass parent_class;
/* Hook to customize right-click popup */
void (* populate_popup) (GtkEntry *entry,
GtkWidget *popup);
/* Action signals
*/
void (* activate) (GtkEntry *entry);
void (* move_cursor) (GtkEntry *entry,
GtkMovementStep step,
gint count,
gboolean extend_selection);
void (* insert_at_cursor) (GtkEntry *entry,
const gchar *str);
void (* delete_from_cursor) (GtkEntry *entry,
GtkDeleteType type,
gint count);
void (* backspace) (GtkEntry *entry);
void (* cut_clipboard) (GtkEntry *entry);
void (* copy_clipboard) (GtkEntry *entry);
void (* paste_clipboard) (GtkEntry *entry);
void (* toggle_overwrite) (GtkEntry *entry);
/* hooks to add other objects beside the entry (like in GtkSpinButton) */
void (* get_text_area_size) (GtkEntry *entry,
gint *x,
gint *y,
gint *width,
gint *height);
void (* get_frame_size) (GtkEntry *entry,
gint *x,
gint *y,
gint *width,
gint *height);
};
Структура класса для GtkEntry. Все виртуальные функции имеют реализацию по умолчанию. Производные классы могут установить указатели виртуальных функций для обработчиков сигналов в NULL, но должны сохранить get_text_area_size и get_frame_size не-NULL; либо использовать реализацию по умолчанию, либо предоставить собственную.
Члены
| Обработчик класса для сигнала «populate-popup». Если не | |
| Обработчик класса для сигнала «activate». Реализация по умолчанию вызывает | |
| Обработчик класса для сигнала «move-cursor». Реализация по умолчанию задает стандартное поведение перемещения курсора в GtkEntry. | |
| Обработчик класса для сигнала «insert-at-cursor». Реализация по умолчанию вставляет текст в позицию курсора. | |
| Обработчик класса для сигнала «delete-from-cursor». Реализация по умолчанию удаляет выделение или указанное количество символов или слов. | |
| Обработчик класса для сигнала «backspace». Реализация по умолчанию удаляет выделение или один символ или слово. | |
| Обработчик класса для сигнала «cut-clipboard». Реализация по умолчанию вырезает выделение, если оно есть. | |
| Обработчик класса для сигнала «copy-clipboard». Реализация по умолчанию копирует выделение, если оно есть. | |
| Обработчик класса для сигнала «paste-clipboard». Реализация по умолчанию вставляет в текущую позицию курсора или поверх текущего выделения, если оно есть. | |
| Обработчик класса для сигнала «toggle-overwrite». Реализация по умолчанию переключает режим вставки и мигает курсором. | |
| Вычисление размера области текста, которая представляет собой его выделенную ширину и запрошенную высоту минус место для отступов и границ. Эта виртуальная функция не должна быть | |
| Вычисление размера рамки области текста, которая представляет собой его выделенную ширину и запрошенную высоту минус место для отступов и границ, с учётом базовой линии и высоты текста. Эта виртуальная функция не должна быть |
перечисление GtkEntryIconPosition
Указывает сторону ввода, на которой размещен значок.
Члены
GTK_ENTRY_ICON_PRIMARY | В начале ввода (в зависимости от направления текста). | |
GTK_ENTRY_ICON_SECONDARY | В конце ввода (в зависимости от направления текста). |
С: 2.16
перечисление GtkInputPurpose
Описывает основное назначение виджета ввода. Эта информация полезна для виртуальных клавиатур и аналогичных методов ввода, чтобы определить, какие клавиши должны быть представлены пользователю.
Обратите внимание, что назначение не предназначено для наложения абсолютно строгих правил относительно разрешенных символов и не заменяет проверку ввода. Для виртуальной клавиатуры нормально разрешать пользователю переопределять ограничения на набор символов, которые выражаются назначением. Приложение должно проверять содержимое ввода, даже если оно указало назначение.
Разница между GTK_INPUT_PURPOSE_DIGITS и GTK_INPUT_PURPOSE_NUMBER заключается в том, что первый принимает только цифры, а второй также некоторые знаки препинания (такие как запятые или точки, плюс, минус) и «e» или «E», как в 3.14E+000.
Это перечисление может быть расширено в будущем; методы ввода должны интерпретировать неизвестные значения как «свободная форма».
Члены
GTK_INPUT_PURPOSE_FREE_FORM | Разрешить любой символ | |
GTK_INPUT_PURPOSE_ALPHA | Разрешить только символы алфавита | |
GTK_INPUT_PURPOSE_DIGITS | Разрешить только цифры | |
GTK_INPUT_PURPOSE_NUMBER | Редактируемое поле ожидает числа | |
GTK_INPUT_PURPOSE_PHONE | Редактируемое поле ожидает номер телефона | |
GTK_INPUT_PURPOSE_URL | Редактируемое поле ожидает URL | |
GTK_INPUT_PURPOSE_EMAIL | Редактируемое поле ожидает адрес электронной почты | |
GTK_INPUT_PURPOSE_NAME | Редактируемое поле ожидает имя человека | |
GTK_INPUT_PURPOSE_PASSWORD | Как | |
GTK_INPUT_PURPOSE_PIN | Как |
С: 3.6
Перечисление GtkInputHints
Описывает подсказки, которые могут быть учтены методами ввода или приложениями. Обратите внимание, что методы ввода могут уже настроить своё поведение в соответствии с GtkInputPurpose поля ввода.
При использовании этих флагов требуется здравый смысл — смешивание GTK_INPUT_HINT_LOWERCASE с любыми подсказками в верхнем регистре не имеет смысла.
Это перечисление может быть расширено в будущем; методы ввода должны игнорировать неизвестные значения.
Члены
GTK_INPUT_HINT_NONE | Без особых предложений поведения | |
GTK_INPUT_HINT_SPELLCHECK | Предлагает проверку орфографии | |
GTK_INPUT_HINT_NO_SPELLCHECK | Предлагает не проверять орфографию | |
GTK_INPUT_HINT_WORD_COMPLETION | Предлагает автодополнение слов | |
GTK_INPUT_HINT_LOWERCASE | Предлагает преобразовать весь текст в нижний регистр | |
GTK_INPUT_HINT_UPPERCASE_CHARS | Предлагает сделать весь текст заглавным | |
GTK_INPUT_HINT_UPPERCASE_WORDS | Предлагает сделать заглавными первые буквы каждого слова | |
GTK_INPUT_HINT_UPPERCASE_SENTENCES | Предлагает сделать заглавной первую букву каждого предложения | |
GTK_INPUT_HINT_INHIBIT_OSK | Предлагает не отображать экранную клавиатуру (например, для калькулятора, у которого уже есть все клавиши). | |
GTK_INPUT_HINT_VERTICAL_WRITING | Текст вертикальный. С версии 3.18 |
С версии: 3.6
Подробное описание свойств
Свойство “activates-default”
“activates-default” gboolean
Определяет, будет ли активироваться виджет по умолчанию (например, кнопка по умолчанию в диалоговом окне) при нажатии Enter.
Флаги: Чтение / Запись
Значение по умолчанию: FALSE
Свойство “attributes”
“attributes” PangoAttrList *
Список атрибутов Pango, применяемых к тексту в поле ввода.
Это полезно в основном для изменения размера или начертания текста.
Флаги: Чтение / Запись
С версии: 3.6
Свойство “buffer”
“buffer” GtkEntryBuffer *
Объект буфера текста, который фактически хранит текст поля ввода.
Флаги: Чтение / Запись / Создание
Свойство “caps-lock-warning”
“caps-lock-warning” gboolean
Определяет, будет ли отображаться предупреждение о включенном Caps Lock в полях ввода паролей.
Обратите внимание, что предупреждение отображается с помощью дополнительного значка, и поэтому не работает, если вы используете позицию дополнительного значка для других целей.
Флаги: Чтение / Запись
Значение по умолчанию: TRUE
С версии: 2.16
Свойство “completion”
“completion” GtkEntryCompletion *
Объект вспомогательного автодополнения, используемый с полем ввода.
Флаги: Чтение / Запись
С версии: 3.2
Свойство “cursor-position”
“cursor-position” gint
Текущее положение курсора ввода в символах.
Флаги: Чтение
Допустимые значения: [0,65535]
Значение по умолчанию: 0
Свойство “editable”
“editable” gboolean
Определяет, можно ли редактировать содержимое поля ввода.
Флаги: Чтение / Запись
Значение по умолчанию: TRUE
Свойство “has-frame”
“has-frame” gboolean
FALSE удаляет внешнюю границу поля ввода.
Флаги: Чтение / Запись
Значение по умолчанию: TRUE
Свойство “im-module”
“im-module” gchar *
Модуль IM (метода ввода), который следует использовать для этого поля ввода. См. GtkIMContext.
Установка значения, отличного от NULL, переопределяет системное значение модуля IM. См. свойство GtkSettings “gtk-im-module”.
Флаги: Чтение / Запись
Значение по умолчанию: NULL
С версии: 2.16
Свойство “inner-border”
“inner-border” GtkBorder *
Устанавливает границу области текста между текстом и рамкой.
GtkEntry:inner-border устарело с версии 3.4 и не должно использоваться в новых кодах.
Используйте стандартные свойства границы и отступа CSS (через объекты, такие как GtkStyleContext и GtkCssProvider); значение этого свойства стиля игнорируется.
Флаги: Чтение / Запись
С версии: 2.10
Свойство “input-hints”
“input-hints” GtkInputHints
Дополнительные подсказки (кроме “input-purpose”), позволяющие методам ввода уточнять свое поведение.
Флаги: Чтение / Запись
С версии: 3.6
Свойство “input-purpose”
“input-purpose” GtkInputPurpose
Цель этого поля ввода текста.
Это свойство может быть использовано экранными клавиатурами и другими методами ввода для корректировки их поведения.
Обратите внимание, что установка цели на GTK_INPUT_PURPOSE_PASSWORD или GTK_INPUT_PURPOSE_PIN не зависит от установки “visibility”.
Флаги: Чтение / Запись
Значение по умолчанию: GTK_INPUT_PURPOSE_FREE_FORM
С версии: 3.6
Свойство “invisible-char”
“invisible-char” guint
Невидимый символ используется при маскировании содержимого поля ввода (в режиме «пароль»). Если он не установлен явно с помощью свойства “invisible-char”, GTK+ определяет используемый символ из списка возможных кандидатов в зависимости от доступности в текущем шрифте.
Это свойство стиля позволяет теме добавить символ в список кандидатов.
Флаги: Чтение / Запись
Значение по умолчанию: '*'
С версии: 2.18
Свойство “invisible-char-set”
“invisible-char-set” gboolean
Определяет, установлен ли невидимый символ для GtkEntry.
Флаги: Чтение / Запись
Значение по умолчанию: FALSE
С версии: 2.16
Свойство “max-length”
“max-length” gint
Максимальное количество символов для этого поля ввода. Ноль, если нет максимума.
Флаги: Чтение / Запись
Допустимые значения: [0,65535]
Значение по умолчанию: 0
Свойство “max-width-chars”
“max-width-chars” gint
Желаемая максимальная ширина поля ввода в символах. Если это свойство установлено в -1, ширина будет вычислена автоматически.
Флаги: Чтение / Запись
Допустимые значения: >= -1
Значение по умолчанию: -1
С версии: 3.12
Свойство “overwrite-mode”
“overwrite-mode” gboolean
Если текст перезаписывается при наборе в поле ввода GtkEntry.
Флаги: Чтение / Запись
Значение по умолчанию: FALSE
С версии: 2.14
Свойство “placeholder-text”
“placeholder-text” gchar *
Текст, который будет отображаться в GtkEntry, когда он пуст и не имеет фокуса.
Флаги: Чтение / Запись
Значение по умолчанию: NULL
С версии: 3.2
Свойство “populate-all”
“populate-all” gboolean
Если :populate-all равен TRUE, сигнал “populate-popup” также генерируется для сенсорных всплывающих меню.
Флаги: Чтение / Запись
Значение по умолчанию: FALSE
С версии: 3.8
Свойство “primary-icon-activatable”
“primary-icon-activatable” gboolean
Определяет, можно ли активировать основной значок.
GTK+ генерирует сигналы “icon-press” и “icon-release” только для чувствительных, активируемых значков.
Чувствительные, но не активируемые значки могут использоваться только для информационных целей.
Флаги: Чтение / Запись
Значение по умолчанию: TRUE
С версии: 2.16
Свойство “primary-icon-gicon”
“primary-icon-gicon” GIcon *
Используемый GIcon для основного значка поля ввода.
Флаги: Чтение / Запись
С версии: 2.16
Свойство “primary-icon-name”
“primary-icon-name” gchar *
Имя значка, используемого для основного значка поля ввода.
Флаги: Чтение / Запись
Значение по умолчанию: NULL
С версии: 2.16
Свойство “primary-icon-pixbuf”
“primary-icon-pixbuf” GdkPixbuf *
Используемый pixbuf в качестве основного значка для поля ввода.
Флаги: Чтение / Запись
С версии: 2.16
Свойство “primary-icon-sensitive”
“primary-icon-sensitive” gboolean
Определяет, является ли основной значок чувствительным.
Нечувствительный значок выглядит серым. GTK+ не генерирует сигналы “icon-press” и “icon-release” и не позволяет выполнять перетаскивание из нечувствительных значков.
Значок следует установить нечувствительным, если действие, которое он должен был бы вызвать при нажатии, в данный момент недоступно.
Флаги: Чтение / Запись
Значение по умолчанию: TRUE
С версии: 2.16
Свойство “primary-icon-stock”
“primary-icon-stock” gchar *
Идентификатор стокового значка, используемого для основного значка поля ввода.
GtkEntry:primary-icon-stock устарело с версии 3.10 и не должно использоваться в новых кодах.
Используйте “primary-icon-name” вместо него.
Флаги: Чтение / Запись
Значение по умолчанию: NULL
С версии: 2.16
Свойство “primary-icon-storage-type”
“primary-icon-storage-type” GtkImageType
Представление, используемое для основного значка поля ввода.
Флаги: Чтение
Значение по умолчанию: GTK_IMAGE_EMPTY
С версии: 2.16
Свойство “primary-icon-tooltip-markup”
“primary-icon-tooltip-markup” gchar *
Содержимое всплывающей подсказки для основного значка, разметка которого выполнена с помощью языка разметки текста Pango.
См. также gtk_entry_set_icon_tooltip_markup().
Флаги: Чтение / Запись
Значение по умолчанию: NULL
С версии: 2.16
Свойство “primary-icon-tooltip-text”
“primary-icon-tooltip-text” gchar *
Содержимое всплывающей подсказки для основного значка.
См. также gtk_entry_set_icon_tooltip_text().
Флаги: Чтение / Запись
Значение по умолчанию: NULL
С версии: 2.16
Свойство “progress-fraction”
“progress-fraction” gdouble
Текущая доля выполненной задачи.
Флаги: Чтение / Запись
Допустимые значения: [0,1]
Значение по умолчанию: 0
С версии: 2.16
Свойство “progress-pulse-step”
“progress-pulse-step” gdouble
Доля от общей ширины поля ввода для перемещения блока "пульсации" прогресса для каждого вызова gtk_entry_progress_pulse().
Флаги: Чтение / Запись
Допустимые значения: [0,1]
Значение по умолчанию: 0.1
С версии: 2.16
Свойство “scroll-offset”
“scroll-offset” gint
Количество пикселей поля ввода, прокрученных влево за пределы экрана.
Флаги: Чтение
Допустимые значения: >= 0
Значение по умолчанию: 0
Свойство “secondary-icon-activatable”
“secondary-icon-activatable” gboolean
Можно ли активировать вторичный значок.
GTK+ генерирует сигналы “icon-press” и “icon-release” только для чувствительных, активируемых значков.
Чувствительные, но не активируемые значки могут использоваться в чисто информационных целях.
Флаги: Чтение / Запись
Значение по умолчанию: TRUE
С версии: 2.16
Свойство “secondary-icon-gicon”
“secondary-icon-gicon” GIcon *
Объект GIcon, используемый для вторичного значка поля ввода.
Флаги: Чтение / Запись
С версии: 2.16
Свойство “secondary-icon-name”
“secondary-icon-name” gchar *
Имя значка, используемое для вторичного значка поля ввода.
Флаги: Чтение / Запись
Значение по умолчанию: NULL
С версии: 2.16
Свойство “secondary-icon-pixbuf”
“secondary-icon-pixbuf” GdkPixbuf *
Pixbuf, используемый в качестве вторичного значка для поля ввода.
Флаги: Чтение / Запись
С версии: 2.16
Свойство “secondary-icon-sensitive”
“secondary-icon-sensitive” gboolean
Чувствителен ли вторичный значок.
Нечувствительный значок отображается серым. GTK+ не генерирует сигналы “icon-press” и “icon-release” и не допускает перетаскивания из нечувствительных значков.
Значок должен быть установлен как нечувствительный, если действие, которое должно было бы сработать при нажатии, в данный момент недоступно.
Флаги: Чтение / Запись
Значение по умолчанию: TRUE
С версии: 2.16
Свойство “secondary-icon-stock”
“secondary-icon-stock” gchar *
Идентификатор stock, используемый для вторичного значка поля ввода.
GtkEntry:secondary-icon-stock устарело с версии 3.10 и не должно использоваться в новом коде.
Используйте “secondary-icon-name” вместо этого.
Флаги: Чтение / Запись
Значение по умолчанию: NULL
С версии: 2.16
Свойство “secondary-icon-storage-type”
“secondary-icon-storage-type” GtkImageType
Представление, используемое для вторичного значка поля ввода.
Флаги: Чтение
Значение по умолчанию: GTK_IMAGE_EMPTY
С версии: 2.16
Свойство “secondary-icon-tooltip-markup”
“secondary-icon-tooltip-markup” gchar *
Содержимое всплывающей подсказки для вторичного значка, разметка которого выполнена с помощью языка разметки текста Pango.
См. также gtk_entry_set_icon_tooltip_markup().
Флаги: Чтение / Запись
Значение по умолчанию: NULL
С версии: 2.16
Свойство “secondary-icon-tooltip-text”
“secondary-icon-tooltip-text” gchar *
Содержимое всплывающей подсказки для вторичного значка.
См. также gtk_entry_set_icon_tooltip_text().
Флаги: Чтение / Запись
Значение по умолчанию: NULL
С версии: 2.16
Свойство “selection-bound”
“selection-bound” gint
Позиция противоположного конца выделения от курсора в символах.
Флаги: Чтение
Допустимые значения: [0,65535]
Значение по умолчанию: 0
Свойство “shadow-type”
“shadow-type” GtkShadowType
Какой тип тени рисовать вокруг поля ввода, когда “has-frame” установлено в TRUE.
GtkEntry:shadow-type устарело с версии 3.20 и не должно использоваться в новом коде.
Используйте CSS для определения стиля границы; значение этого свойства стиля игнорируется.
Флаги: Чтение / Запись
Значение по умолчанию: GTK_SHADOW_IN
С версии: 2.12
Свойство “tabs”
“tabs” PangoTabArray *
Список местоположений табуляции для применения к тексту поля ввода.
Флаги: Чтение / Запись
Свойство “text”
“text” gchar *
Содержимое поля ввода.
Флаги: Чтение / Запись
Значение по умолчанию: ""
Свойство “text-length”
“text-length” guint
Длина текста в GtkEntry.
Флаги: Чтение
Допустимые значения: <= 65535
Значение по умолчанию: 0
С версии: 2.14
Свойство “truncate-multiline”
“truncate-multiline” gboolean
Когда TRUE, вставленный многострочный текст усекается до первой строки.
Флаги: Чтение / Запись
Значение по умолчанию: FALSE
С версии: 2.10
Свойство “visibility”
“visibility” gboolean
FALSE отображает "невидимый символ" вместо фактического текста (режим пароля).
Флаги: Чтение / Запись
Значение по умолчанию: TRUE
Свойство “width-chars”
“width-chars” gint
Количество символов, для которых нужно оставить место в поле ввода.
Флаги: Чтение / Запись
Допустимые значения: >= -1
Значение по умолчанию: -1
Свойство “xalign”
“xalign” gfloat
Горизонтальное выравнивание, от 0 (слева) до 1 (справа). Обратное для макетов RTL.
Флаги: Чтение / Запись
Допустимые значения: [0,1]
Значение по умолчанию: 0
С версии: 2.4
Подробности свойств стиля
Свойство стиля “icon-prelight”
“icon-prelight” gboolean
Свойство стиля prelight определяет, будут ли активируемые значки предварительно подсвечиваться при наведении указателя мыши.
GtkEntry:icon-prelight устарело начиная с версии 3.20 и не должно использоваться в новом коде.
Используйте CSS для управления отображением предварительно подсвеченных значков; значение этого свойства стиля игнорируется.
Флаги: Чтение
Значение по умолчанию: TRUE
С: 2.16
Свойство стиля “inner-border”
“inner-border” GtkBorder *
Устанавливает границу текстовой области между текстом и рамкой.
GtkEntry:inner-border устарело начиная с версии 3.4 и не должно использоваться в новом коде.
Используйте стандартные свойства CSS border и padding (через объекты, такие как GtkStyleContext и GtkCssProvider); значение этого свойства стиля игнорируется.
Флаги: Чтение
С: 2.10
Свойство стиля “invisible-char”
“invisible-char” guint
Невидимый символ используется при маскировании содержимого поля ввода (в режиме «пароль»). Если он не задан явно с помощью свойства «invisible-char», GTK+ определяет символ для использования из списка возможных кандидатов в зависимости от наличия в текущем шрифте.
Это свойство стиля позволяет теме добавить символ в список кандидатов.
Флаги: Чтение
Значение по умолчанию: 0
С: 2.18
Свойство стиля “progress-border”
“progress-border” GtkBorder *
Граница вокруг полосы прогресса в поле ввода.
GtkEntry:progress-border устарело начиная с версии 3.4 и не должно использоваться в новом коде.
Используйте стандартное свойство CSS margin (через объекты, такие как GtkStyleContext и GtkCssProvider); значение этого свойства стиля игнорируется.
Флаги: Чтение
С: 2.16
Подробности сигналов
Сигнал “activate”
void user_function (GtkEntry *entry, gpointer user_data)
Сигнал ::activate генерируется, когда пользователь нажимает клавишу Enter.
Хотя этот сигнал используется как сигнал привязки клавиш, его часто используют приложения для перехвата активации элементов ввода.
По умолчанию для этого сигнала назначены все варианты нажатия клавиши Enter.
Параметры
entry | Элемент ввода, на котором генерируется сигнал | |
user_data | данные пользователя, заданные при подключении обработчика сигнала. |
Флаги: Действие
Сигнал “backspace”
void user_function (GtkEntry *entry, gpointer user_data)
Сигнал ::backspace — это сигнал привязки клавиш, который генерируется, когда пользователь запрашивает его.
По умолчанию для этого сигнала назначены клавиши Backspace и Shift-Backspace.
Параметры
entry | объект, который получил сигнал | |
user_data | данные пользователя, заданные при подключении обработчика сигнала. |
Флаги: Действие
Сигнал “copy-clipboard”
void user_function (GtkEntry *entry, gpointer user_data)
Сигнал ::copy-clipboard — это сигнал привязки клавиш, который генерируется для копирования выделенного текста в буфер обмена.
По умолчанию для этого сигнала назначены клавиши Ctrl-c и Ctrl-Insert.
Параметры
entry | объект, который получил сигнал | |
user_data | данные пользователя, заданные при подключении обработчика сигнала. |
Флаги: Действие
Сигнал “cut-clipboard”
void user_function (GtkEntry *entry, gpointer user_data)
Сигнал ::cut-clipboard — это сигнал привязки клавиш, который генерируется для вырезания выделенного текста в буфер обмена.
По умолчанию для этого сигнала назначены клавиши Ctrl-x и Shift-Delete.
Параметры
entry | объект, который получил сигнал | |
user_data | данные пользователя, заданные при подключении обработчика сигнала. |
Флаги: Действие
Сигнал “delete-from-cursor”
void user_function (GtkEntry *entry, GtkDeleteType type, gint count, gpointer user_data)
Сигнал ::delete-from-cursor — это сигнал привязки клавиш, который генерируется при начатии пользователем удаления текста.
Если type равен GTK_DELETE_CHARS, GTK+ удаляет выделение, если оно есть, иначе удаляет указанное количество символов.
По умолчанию для этого сигнала назначены клавиши Delete для удаления символа и Ctrl-Delete для удаления слова.
Параметры
entry | объект, который получил сигнал | |
type | уровень детализации удаления, как GtkDeleteType | |
count | количество единиц | |
user_data | данные пользователя, заданные при подключении обработчика сигнала. |
Флаги: Действие
Сигнал “icon-press”
void user_function (GtkEntry *entry, GtkEntryIconPosition icon_pos, GdkEvent *event, gpointer user_data)
Сигнал ::icon-press генерируется при нажатии на активируемую иконку.
Параметры
entry | Элемент ввода, на котором генерируется сигнал | |
icon_pos | Позиция нажатой иконки | |
event | событие нажатия кнопки. | [type Gdk.EventButton] |
user_data | данные пользователя, заданные при подключении обработчика сигнала. |
Флаги: Выполнять последним
С версии 2.16
Сигнал “icon-release”
void user_function (GtkEntry *entry, GtkEntryIconPosition icon_pos, GdkEvent *event, gpointer user_data)
Сигнал ::icon-release генерируется при отпускании кнопки мыши после щелчка по активируемой иконке.
Параметры
entry | Элемент ввода, на котором генерируется сигнал | |
icon_pos | Позиция нажатой иконки | |
event | событие отпускания кнопки. | [type Gdk.EventButton] |
user_data | данные пользователя, заданные при подключении обработчика сигнала. |
Флаги: Выполнять последним
С версии 2.16
Сигнал “insert-at-cursor”
void user_function (GtkEntry *entry, gchar *string, gpointer user_data)
Сигнал ::insert-at-cursor — это сигнал привязки клавиш, который генерируется при начатии пользователем вставки фиксированной строки в курсор.
Для этого сигнала нет привязок по умолчанию.
Параметры
entry | объект, который получил сигнал | |
string | строка для вставки | |
user_data | данные пользователя, заданные при подключении обработчика сигнала. |
Флаги: Действие
Сигнал “move-cursor”
void user_function (GtkEntry *entry, GtkMovementStep step, gint count, gboolean extend_selection, gpointer user_data)
Сигнал ::move-cursor — это сигнал для привязки клавиш, который генерируется при начале перемещения курсора пользователем. Если курсор не виден в entry, этот сигнал вызывает перемещение области просмотра вместо этого.
Приложения не должны подключаться к нему, но могут генерировать его с помощью g_signal_emit_by_name(), если им необходимо программно управлять курсором.
Стандартные привязки для этого сигнала представлены в двух вариантах: вариант со значением модификатора Shift расширяет выделение, а вариант без модификатора Shift — нет. Существует слишком много комбинаций клавиш, чтобы перечислить их все здесь.
Стрелки перемещают курсор на отдельные символы/строки
Комбинации Ctrl+стрелка перемещают курсор на слова/абзацы
Клавиши Home/End перемещают курсор к началу/концу буфера
Параметры
entry | объект, получивший сигнал | |
step | размер перемещения, как GtkMovementStep | |
count | количество единиц | |
extend_selection |
| |
user_data | данные пользователя, установленные при подключении обработчика сигнала. |
Флаги: Действие
Сигнал “paste-clipboard”
void user_function (GtkEntry *entry, gpointer user_data)
Сигнал ::paste-clipboard — это сигнал для привязки клавиш, который генерируется для вставки содержимого буфера обмена в область текста.
Стандартные привязки для этого сигнала — Ctrl+v и Shift+Insert.
Параметры
entry | объект, получивший сигнал | |
user_data | данные пользователя, установленные при подключении обработчика сигнала. |
Флаги: Действие
Сигнал “populate-popup”
void user_function (GtkEntry *entry, GtkWidget *popup, gpointer user_data)
Сигнал ::populate-popup генерируется перед отображением контекстного меню поля ввода.
Если вам нужно добавить элементы в контекстное меню, подключитесь к этому сигналу и добавьте свои элементы в widget, который в этом случае будет GtkMenu.
Если свойство “populate-all” имеет значение TRUE, этот сигнал также будет генерироваться для заполнения всплывающих окон касания. В этом случае widget будет другим контейнером, например, GtkToolbar. Обработчик сигнала не должен делать предположений о типе widget.
Параметры
entry | Поле ввода, на котором генерируется сигнал | |
popup | контейнер, который заполняется | |
user_data | данные пользователя, установленные при подключении обработчика сигнала. |
Сигнал “preedit-changed”
void user_function (GtkEntry *entry, gchar *preedit, gpointer user_data)
Если используется метод ввода, введённый текст не будет сразу добавлен в буфер. Поэтому, если вам нужен текст, подключитесь к этому сигналу.
Параметры
entry | объект, получивший сигнал | |
preedit | текущая строка предварительного редактирования | |
user_data | данные пользователя, установленные при подключении обработчика сигнала. |
Флаги: Действие
С: 2.20
Сигнал “toggle-overwrite”
void user_function (GtkEntry *entry, gpointer user_data)
Сигнал ::toggle-overwrite — это сигнал для привязки клавиш, который генерируется для переключения режима вставки.
Стандартная привязка для этого сигнала — Insert.
Параметры
entry | объект, получивший сигнал | |
user_data | данные пользователя, установленные при подключении обработчика сигнала. |
Флаги: Действие
См. также
© 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/GtkEntry.html