краткое описание#include <gtk/gtk.h> gtkentry; gtkwidget* gtk_entry_new (void); gtkwidget* gtk_entry_new_with_max_length (gint max); void gtk_entry_set_text (gtkentry *entry, const gchar *text); void gtk_entry_append_text (gtkentry *entry, const gchar *text); void gtk_entry_prepend_text (gtkentry *entry, const gchar *text); void gtk_entry_set_position (gtkentry *entry, gint position); const gchar* gtk_entry_get_text (gtkentry *entry); void gtk_entry_select_region (gtkentry *entry, gint start, gint end); void gtk_entry_set_visibility (gtkentry *entry, gboolean visible); void gtk_entry_set_invisible_char (gtkentry *entry, gunichar ch); void gtk_entry_set_editable (gtkentry *entry, gboolean editable); void gtk_entry_set_max_length (gtkentry *entry, gint max); gboolean gtk_entry_get_activates_default (gtkentry *entry); gboolean gtk_entry_get_has_frame (gtkentry *entry); const gtkborder* gtk_entry_get_inner_border (gtkentry *entry); gint gtk_entry_get_width_chars (gtkentry *entry); void gtk_entry_set_activates_default (gtkentry *entry, gboolean setting); void gtk_entry_set_has_frame (gtkentry *entry, gboolean setting); void gtk_entry_set_inner_border (gtkentry *entry, const gtkborder *border); void gtk_entry_set_width_chars (gtkentry *entry, gint n_chars); gunichar gtk_entry_get_invisible_char (gtkentry *entry); void gtk_entry_set_alignment (gtkentry *entry, gfloat xalign); gfloat gtk_entry_get_alignment (gtkentry *entry); pangolayout* gtk_entry_get_layout (gtkentry *entry); void gtk_entry_get_layout_offsets (gtkentry *entry, gint *x, gint *y); gint gtk_entry_layout_index_to_text_index (gtkentry *entry, gint layout_index); gint gtk_entry_text_index_to_layout_index (gtkentry *entry, gint text_index); gint gtk_entry_get_max_length (gtkentry *entry); gboolean gtk_entry_get_visibility (gtkentry *entry); void gtk_entry_set_completion (gtkentry *entry, gtkentrycompletion *completion); gtkentrycompletion* gtk_entry_get_completion (gtkentry *entry); иерархия объектовgobject +----ginitiallyunowned +----gtkobject +----gtkwidget +----gtkentry +----gtkspinbutton осуществляемый интерфейсgtkentry осуществляет atkimplementoriface, gtkcelleditable и gtkeditable. свойства"activates-default" gboolean : read / write "cursor-position" gint : read "editable" gboolean : read / write "has-frame" gboolean : read / write "inner-border" gtkborder : read / write "invisible-char" guint : read / write "max-length" gint : read / write "scroll-offset" gint : read "selection-bound" gint : read "text" gchararray : read / write "truncate-multiline" gboolean : read / write "visibility" gboolean : read / write "width-chars" gint : read / write "xalign" gfloat : read / write свойства стиля"inner-border" gtkborder : read сигналы"activate" void user_function (gtkentry *entry, gpointer user_data) : run last / action "backspace" void user_function (gtkentry *entry, gpointer user_data) : run last / action "copy-clipboard" void user_function (gtkentry *entry, gpointer user_data) : run last / action "cut-clipboard" void user_function (gtkentry *entry, gpointer user_data) : run last / action "delete-from-cursor" void user_function (gtkentry *entry, gtkdeletetype *arg1, gint arg2, gpointer user_data) : run last / action "insert-at-cursor" void user_function (gtkentry *entry, gchar *arg1, gpointer user_data) : run last / action "move-cursor" void user_function (gtkentry *entry, gtkmovementstep *arg1, gint arg2, gboolean arg3, gpointer user_data) : run last / action "paste-clipboard" void user_function (gtkentry *entry, gpointer user_data) : run last / action "populate-popup" void user_function (gtkentry *entry, gtkmenu *arg1, gpointer user_data) : run last "toggle-overwrite" void user_function (gtkentry *entry, gpointer user_data) : run last / action описаниеgtkentry виджет одно-строчного ввода. по умолчанию поддерживается довольно большой набор привязок клавиш. если вводимый текст больше поля ввода, виджет прокручивается так чтобы курсор находился в видимом положении. деталиgtkentrytypedef struct _gtkentry gtkentry; gtkentry структура содержит только закрытые данные. gtk_entry_new ()gtkwidget* gtk_entry_new (void); создаёт новое поле ввода.
gtk_entry_new_with_max_length ()gtkwidget* gtk_entry_new_with_max_length (gint max); внимание
создаёт новый gtkentry виджет с данным максимумом длины. помните: существование этой функции
противоречит остальной части gtk+ api.
вместо этой функции нужно просто
запросить пользователя создать
дополнительный вызов
gtk_entry_set_text ()void gtk_entry_set_text (gtkentry *entry, const gchar *text); устанавливает текст в виджет перезаписывая существующий контекст.
gtk_entry_append_text ()void gtk_entry_append_text (gtkentry *entry, const gchar *text); внимание
добавляет текст к контексту виджета.
gtk_entry_prepend_text ()void gtk_entry_prepend_text (gtkentry *entry, const gchar *text); внимание
вставляет текст пред контекстом виджета.
gtk_entry_set_position ()void gtk_entry_set_position (gtkentry *entry, gint position); внимание
устанавливает курсор в указанную
позицию ввода. вместо этой функции
используйте
gtk_entry_get_text ()const gchar* gtk_entry_get_text (gtkentry *entry);
находит контекст ввода виджета. смотрите
также
gtk_entry_select_region ()void gtk_entry_select_region (gtkentry *entry, gint start, gint end); внимание
выделяет область текста. символы
выделяются начиная с позиции
gtk_entry_set_visibility ()void gtk_entry_set_visibility (gtkentry *entry, gboolean visible);
устанавливает видим ли контекст поля
ввода или нет. когда видимость установлена
в по умолчанию скрывающий символ это
звёздочка '*', но это можно изменить с
помощью
gtk_entry_set_invisible_char ()void gtk_entry_set_invisible_char (gtkentry *entry, gunichar ch);
устанавливает символы для использования
вместо актуального текста когда вызвана
gtk_entry_set_editable ()void gtk_entry_set_editable (gtkentry *entry, gboolean editable); внимание
определяет может или нет пользователь
изменять текст в редактируемом виджете.
это устаревшая функция, вместо неё
используйте
gtk_entry_set_max_length ()void gtk_entry_set_max_length (gtkentry *entry, gint max); устанавливает максимум допустимой длины контекста виджета. если текущий контекст больше полученной длины, то он соответственно усекается.
gtk_entry_get_activates_default ()gboolean gtk_entry_get_activates_default (gtkentry *entry);
определяет значение установленное с
помощью
gtk_entry_get_has_frame ()gboolean gtk_entry_get_has_frame (gtkentry *entry);
определяет значение установленное с
помощью
gtk_entry_get_inner_border ()const gtkborder* gtk_entry_get_inner_border (gtkentry *entry);
эта функция возвращает свойство
внутренней окантовки поля ввода. смотрите
начиная с версии 2.10 gtk_entry_get_width_chars ()gint gtk_entry_get_width_chars (gtkentry *entry);
определяет значение установленное с
помощью
gtk_entry_set_activates_default ()void gtk_entry_set_activates_default (gtkentry *entry, gboolean setting);
если (для експертов: если
gtk_entry_set_has_frame ()void gtk_entry_set_has_frame (gtkentry *entry, gboolean setting); устанавливает скошенную рамку вокруг поля ввода.
gtk_entry_set_inner_border ()void gtk_entry_set_inner_border (gtkentry *entry, const gtkborder *border);
устанавливает свойство внутренней
окантовки если установлено, это свойство отменяет свойство стиля внутренней окантовки. отмена свойства полезна когда вы хотите сделать правку по месту в некотором тексте в полотне или списке виджета, где точное позиционирование поля ввода необходимо.
начиная с версии 2.10 gtk_entry_set_width_chars ()void gtk_entry_set_width_chars (gtkentry *entry, gint n_chars);
изменяет запрашиваемый размер поля
ввода на размер
gtk_entry_get_invisible_char ()gunichar gtk_entry_get_invisible_char (gtkentry *entry);
определяет символ используемый вместо
реальных символов для поля ввода с
установленным свойством видимости в
false. смотрите
gtk_entry_set_alignment ()void gtk_entry_set_alignment (gtkentry *entry, gfloat xalign); устанавливает выравнивание для контекста поля ввода. это контролирует горизонтальное позиционирование контекста когда отображаемый текст короче ширины поля ввода.
начиная с версии 2.4 gtk_entry_get_alignment ()gfloat gtk_entry_get_alignment (gtkentry *entry);
получает значение установленное
начиная с версии 2.4 gtk_entry_get_layout ()pangolayout* gtk_entry_get_layout (gtkentry *entry);
получает pangolayout
используемое для отображения ввода.
выравнивание полезно например для
конвертации позиции текста в пиксельную
позицию, в комбинации с
имейте ввиду что выравнивание может
содержать пред редактируемую строку,
поэтому
gtk_entry_get_layout_offsets ()void gtk_entry_get_layout_offsets (gtkentry *entry, gint *x, gint *y); определяет позицию pangolayout используемую для текста ввода, в координатах виджета. полезно если вам нужно поднять линию текста в поле ввода с некоторым другим текстом, например когда используется поле ввода для внедрённых редактируемых ячеек в полотне виджета. также полезно для конвертации событий мыши в координаты внутри pangolayout, например для выполнения некоторого действия, если некоторая часть поля ввода с текстом нажата. помните, это изменит также пользовательское
прокручивание в поле ввода и смещение;
вам нужно подключить сигнал
"notify::scroll-offset" чтобы проконтролировать
это. помните когда используются функции
pangolayout
вам нужно конвертировать из и в пикселы
используя имейте ввиду что выравнивание текста
может содержать пред редактируемую
строку, поэтому
gtk_entry_layout_index_to_text_index ()gint gtk_entry_layout_index_to_text_index (gtkentry *entry, gint 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_max_length ()gint gtk_entry_get_max_length (gtkentry *entry);
находит допустимый максимум длины
текста в
gtk_entry_get_visibility ()gboolean gtk_entry_get_visibility (gtkentry *entry);
определяет видим ли текст в
gtk_entry_set_completion ()void gtk_entry_set_completion (gtkentry *entry, gtkentrycompletion *completion);
устанавливает
начиная с версии 2.4 gtk_entry_get_completion ()gtkentrycompletion* gtk_entry_get_completion (gtkentry *entry);
находит текущий вспомогательный объект
завершения используемый
начиная с версии 2.4 детали свойствсвойство "
|
|
объект получающий сигнал. |
|
пользовательские данные устанавливаемые при подключении обработчика сигнала. |
void user_function (gtkentry *entry, gpointer user_data) : run last / action
|
объект получающий сигнал. |
|
пользовательские данные устанавливаемые при подключении обработчика сигнала. |
void user_function (gtkentry *entry, gpointer user_data) : run last / action
|
объект получающий сигнал. |
|
пользовательские данные устанавливаемые при подключении обработчика сигнала. |
void user_function (gtkentry *entry, gpointer user_data) : run last / action
|
объект получающий сигнал. |
|
пользовательские данные устанавливаемые при подключении обработчика сигнала. |
void user_function (gtkentry *entry, gtkdeletetype *arg1, gint arg2, gpointer user_data) : run last / action
|
объект получающий сигнал. |
|
|
|
|
|
пользовательские данные устанавливаемые при подключении обработчика сигнала. |
void user_function (gtkentry *entry, gchar *arg1, gpointer user_data) : run last / action
|
объект получающий сигнал. |
|
|
|
пользовательские данные устанавливаемые при подключении обработчика сигнала. |
void user_function (gtkentry *entry, gtkmovementstep *arg1, gint arg2, gboolean arg3, gpointer user_data) : run last / action
|
объект получающий сигнал. |
|
|
|
|
|
|
|
пользовательские данные устанавливаемые при подключении обработчика сигнала. |
void user_function (gtkentry *entry, gpointer user_data) : run last / action
|
объект получающий сигнал. |
|
пользовательские данные устанавливаемые при подключении обработчика сигнала. |
void user_function (gtkentry *entry, gtkmenu *arg1, gpointer user_data) : run last
|
объект получающий сигнал. |
|
|
|
пользовательские данные устанавливаемые при подключении обработчика сигнала. |
void user_function (gtkentry *entry, gpointer user_data) : run last / action
|
объект получающий сигнал. |
|
пользовательские данные устанавливаемые при подключении обработчика сигнала. |
a widget for handling multi-line text entry. |