Форум программистов, компьютерный форум CyberForum.ru

Как определить, что собеседник в данный момент печатает сообщение как в ICQ - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 31, средняя оценка - 4.97
AucT
0 / 0 / 0
Регистрация: 02.04.2010
Сообщений: 26
27.08.2010, 13:50     Как определить, что собеседник в данный момент печатает сообщение как в ICQ #1
Думаю многие имеют скайп/асю. И там есть фишка если собеседник набирает сообщение про ето тебе пишет... Как ето реализовать??
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.08.2010, 13:50     Как определить, что собеседник в данный момент печатает сообщение как в ICQ
Посмотрите здесь:

C++ Обьясните пожайлуста как и что делает данный оператор в этом выражении fState [x][y] ^= 1;. Неполный код привожу ниже.
Как исправить данный код сортировки? C++
C++ Как отправлять данный файл на данный адрес электронной почты?
Функция возвращающая существует ли соединение в данный момент C++
C++ Как отделить BGI файл от EXE. Как можно внедрить данный модуль в рабочий файл?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
CheshireCat
Эксперт С++
2907 / 1235 / 78
Регистрация: 27.05.2008
Сообщений: 3,309
27.08.2010, 14:20     Как определить, что собеседник в данный момент печатает сообщение как в ICQ #2
Грубо говоря, алгоритм тривиален:
1. анализ: есть ли какие-нибудь символы в "окне сообщения на отправку"?
2. если есть, то каков средний интервал между появлением (набором) последних символов? Если он меньше некоторой величины (например, пусть это будет 0.5 сек.) - то пользователь прямо сейчас набирает сообщение, индицируем этот факт; если больше - значит, он набрал только начало сообщения, и потом задумался/отвлекся/отошел... и т.п. - снимаем индикацию.
Во.
easybudda
Модератор
Эксперт С++
 Аватар для easybudda
9373 / 5423 / 914
Регистрация: 25.07.2009
Сообщений: 10,423
27.08.2010, 15:58     Как определить, что собеседник в данный момент печатает сообщение как в ICQ #3
Да по-моему всё проще - при изменении текста в окне тому, кому пишешь, отправляется соответствующее сообщение...
silent_1991
Эксперт C++
4938 / 3014 / 149
Регистрация: 11.11.2009
Сообщений: 7,024
Завершенные тесты: 1
27.08.2010, 16:28     Как определить, что собеседник в данный момент печатает сообщение как в ICQ #4
easybudda,
Тогда после набора каждой буквы во время паузы перед набором следующей постоянно будет отправляться сообщение о конце набора и в итоге текст "Собеседник печатает сообщение" будет постоянно мигать, поэтому лучше действительно сравнивать с неким эпсилон.
easybudda
Модератор
Эксперт С++
 Аватар для easybudda
9373 / 5423 / 914
Регистрация: 25.07.2009
Сообщений: 10,423
27.08.2010, 16:37     Как определить, что собеседник в данный момент печатает сообщение как в ICQ #5
Цитата Сообщение от silent_1991 Посмотреть сообщение
Тогда после набора каждой буквы во время паузы перед набором следующей постоянно будет отправляться сообщение о конце набора и в итоге текст "Собеседник печатает сообщение" будет постоянно мигать, поэтому лучше действительно сравнивать с неким эпсилон.
Да не, вот как-раз клиент получателя сообщения возведёт флаг, что ему что-то пишут, и по прошествии какого-то времени, если новых сообщений не поступало, просто его снимет. При каждом новом сообщении о наборе, если флаг уже установлен, заново таймер будет запускаться...
silent_1991
Эксперт C++
4938 / 3014 / 149
Регистрация: 11.11.2009
Сообщений: 7,024
Завершенные тесты: 1
27.08.2010, 16:42     Как определить, что собеседник в данный момент печатает сообщение как в ICQ #6
easybudda,
Ну да, можно и так.
Yandex
Объявления
27.08.2010, 16:42     Как определить, что собеседник в данный момент печатает сообщение как в ICQ
Ответ Создать тему
Опции темы

Текущее время: 16:41. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru