Здравствуйте!
Строка в EditBox выводится выделенная (высвеченная), а этого не нужно. Где-то, что-то сделала, в настройках, а сейчас не могу «отыграть назад». Может, кто подскажет, как сделать, что бы строка выводилась обычной (невыделенной).
Работаю в Visual С++ 6.0.
PS В этом же приложении, просто в др. диалоговом окне в EditBox строка выводится как надо.
Всего наилучшего!
Выделение строки
Модераторы: Hawk, Romeo, Absurd, DeeJayC, WinMain
- Romeo
- Сообщения: 3091
- Зарегистрирован: 02 мар 2004, 17:25
- Откуда: Крым, Севастополь
- Контактная информация:
EditBox сам выделяет строку когда в него попадает фокус. Это стандартное поведение, можешь поэксперементировать с любыми диалогами Windows. Таким образом, если твой EditBox находится первым в Z-order'е, то выделенный текст - норма, так как система при открытии диалога сама выставляет фокус на первый элемент Z-order'а, и EditBox соответственно реагирует на эту фокусировку выделением всего своего текста. Вполне возможно, что во втором диалоге, о котором ты упоминала, EditBox не является первым в Z-order'е и потому не выделяет свой текст при открытии диалога. Но он всё равно выделит его, если ты доберёшься до этого EditBox'а нажимая Tab, либо кликнешь по нему мышкой.
Entites should not be multiplied beyond necessity @ William Occam
---
Для выделения С++ кода используйте конструкцию [ code=cpp ] Код [ /code ] (без пробелов)
---
Сообщение "Спасибо" малоинформативно. Благодарность правильнее высказать, воспользовавшись кнопкой "Reputation" в виде звёздочки, расположенной в левом нижнем углу рамки сообщения.
---
Для выделения С++ кода используйте конструкцию [ code=cpp ] Код [ /code ] (без пробелов)
---
Сообщение "Спасибо" малоинформативно. Благодарность правильнее высказать, воспользовавшись кнопкой "Reputation" в виде звёздочки, расположенной в левом нижнем углу рамки сообщения.
По моим представлениям, если надо убрать выделение в момент перехода на данный EditBox, то возможно ловить этот момент получения EditBox-ом фокуса и программно "сбивать" выделение. Хотя, м/б визуально на какое-то мгновение будет заметно "мигание" - очень кратоквременное выделение.
Установка нужного выделения (в т.ч. снятие выделения) делается через
SendMessage (hWnd, EM_SETSEL, .......)
или, в случае использования MFC, через
CEdit::SetSel (...)
Установка нужного выделения (в т.ч. снятие выделения) делается через
SendMessage (hWnd, EM_SETSEL, .......)
или, в случае использования MFC, через
CEdit::SetSel (...)
- Romeo
- Сообщения: 3091
- Зарегистрирован: 02 мар 2004, 17:25
- Откуда: Крым, Севастополь
- Контактная информация:
Мне кажется не стоит бороться со стандартным поведение элемента управления, куда проще поменять требования, тем более когда они придуманы самим собой
Entites should not be multiplied beyond necessity @ William Occam
---
Для выделения С++ кода используйте конструкцию [ code=cpp ] Код [ /code ] (без пробелов)
---
Сообщение "Спасибо" малоинформативно. Благодарность правильнее высказать, воспользовавшись кнопкой "Reputation" в виде звёздочки, расположенной в левом нижнем углу рамки сообщения.
---
Для выделения С++ кода используйте конструкцию [ code=cpp ] Код [ /code ] (без пробелов)
---
Сообщение "Спасибо" малоинформативно. Благодарность правильнее высказать, воспользовавшись кнопкой "Reputation" в виде звёздочки, расположенной в левом нижнем углу рамки сообщения.
Спасибо, все получилось!