GtkEntry текстовый сигнал изменения - PullRequest
9 голосов
/ 07 октября 2010

Как я могу подключить обратный вызов сигнала для любого изменения в буфере GtkEntry, включая добавление, удаление символов, вставку или вырезку текста? Я просмотрел документы для GtkWidget, GtkEntry и GtkEntryBuffer, не найдя этого.

Примечание: если мой вопрос был сформулирован неверно, подумайте о событии change в HTML DOM, за исключением , что оно запускается жадно после каждого нажатия клавиши или события, которое вызывает изменение, и не только проверяется при снятии фокуса .

1 Ответ

23 голосов
/ 07 октября 2010

Имеется сигнал changed (интерфейса GtkEditable):

:: Измененный сигнал отправляется в конце одной видимой пользователем операции над содержимым GtkEditable.

Например, операция вставки, которая заменяет содержимое выделенной области, вызовет только одно излучение сигнала (даже если она выполняется сначала путем удаления выделенной области, а затем вставки нового содержимого и может вызывать множественные :: notify :: text сигналов будет выпущено).

(я обнаружил, что, проверив реализованные интерфейсы раздел.)

Это означает, что вы также можете подключиться к сигналу notify свойства text (в частности, notify::text).

Существует также сигнал preedit-changed:

Если используется метод ввода, набранный текст не будет немедленно зафиксирован в буфере. Поэтому, если вас интересует текст, подключитесь к этому сигналу.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...