Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

сложный и важный вопрос по EditBox

318
16 мая 2008 года
nof
193 / / 03.04.2006
Добрый день всем
Есть mfc с++ приложение, написанное под MSVC 2005.
На форме есть EditBox, к которому привязана CString-переменная. В этот эдитбокс пользователь осуществляет ввод некоего текста.

Так вот, вопрос в том, как можно определить строчку, на которой в данный момент находится курсор? В принципе, посчитать количество переносов не составляет друга (правда ресурсоёмко, очевидно), но не могу понять как отслеживать перемещение курсора. Как распознавать в каком он месте в данный момент находится?
В общём, тёмный лес :/ всю голову сломал.

Заранее, спасибо, всем откликнувшимся!
1.8K
17 мая 2008 года
CilCatblack
251 / / 20.09.2007
GetCurSel():)
318
17 мая 2008 года
nof
193 / / 03.04.2006
Цитата: CilCatblack
GetCurSel():)


У CString нет такого метода... Это же CListBox на сколько я помню

318
19 мая 2008 года
nof
193 / / 03.04.2006
ну что, никто не подскажет? :/
5
19 мая 2008 года
hardcase
4.5K / / 09.08.2005
Сперва получаете с помощью сообщения EM_GETSEL позицию каретки, далее с помощью EM_LINEFROMCHAR получаете строку в которой стоит каретка.
Делов-то.
318
19 мая 2008 года
nof
193 / / 03.04.2006
Цитата: hardcase
Сперва получаете с помощью сообщения EM_GETSEL позицию каретки, далее с помощью EM_LINEFROMCHAR получаете строку в которой стоит каретка.
Делов-то.


есть, получилось! ОГРОМНОЕ СПАСИБО!

Только вот остался ещё один нерешённый вопрос... как обновлять позицию при каждом перемещении курсора (каретки)? В обработчике сообщений эдитбокса не нашёл такого :/

288
24 мая 2008 года
nikitozz
1.2K / / 09.03.2007
Цитата: nof

Только вот остался ещё один нерешённый вопрос... как обновлять позицию при каждом перемещении курсора (каретки)? В обработчике сообщений эдитбокса не нашёл такого :/



Просто выполняйте все вышеописаные манипуляции при получении каждого сообщения WM_KEYDOWN, WM_LBUTTONUP и WM_RBUTTONUP.

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог