2011-01-18 3 views
0

У меня есть настройка richedit control как окно чата, и я понятия не имею, как удалить мигающую каретку из элемента управления, кто-нибудь знает, как это сделать в управлении edit/richedit?Отключение/удаление каретки из окна чата

+0

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

+0

Да, стандартный расширенный редактор редактирования 2.0. Это происходит, но мне нужно удалить его, когда окно имеет фокус клавиатуры. – Sam

ответ

1

На основании this page вам необходимо обработать сообщение Windows EN_SETFOCUS и позвонить по телефону HideCaret(). В документах говорится, что вызовы HideCaret() являются кумулятивными, поэтому вы, вероятно, должны только вызывать его один раз (используйте переменную static, чтобы запомнить, была ли она установлена) или, альтернативно, вызывать ShowCaret() в ответ на EN_KILLFOCUS.