EM_GETSEL i Richedit/Edit

2 отговора 64 прегледа
#1

EM_GETSEL i Richedit/Edit

Ami imam problem s tova EM_GETSEL. Tui kato mislq da obrabotvam text do 64KB reshih da bachkam samo s EM_GETSEL nezavisimo dali prashtam kum RichEdit ili obiknoven Edit. No se poluchava problem. Otvarqm si edin Notepad i edin Wordpad. Dvata sudurjat edin i sushti text:
new place
new place
new place

Selectiram "place" na vtori red. Kato dam getsel na RichEdit toi mi dava 14-19, a Edit 15-20.

Selectiram "place" na treti red. Za sledvashtiq red RichEdit: 24-29, Edit: 26-31

Qvno RichEdit schita nov red za 1 znak, a Edit mu slaga 2 (#13#10). Tova sega nqkakuv bug li e ili kakvo? Kato vzema texta ot RichEdit-a i ot Edit-a sus WM_GETTEXT i dvata vrushtat edno i sushto neshto. Zashto Wordpad broi greshno selection-a?

A i drugoto e, che RichEdit ot Delphi programa (t.e TRichEdit) otgovarq kakto obiknoven Edit.

by Waz Gaa
[email protected]
Отговор
в отговор на Waz Gaa #2

Re: EM_GETSEL i Richedit/Edit

значи в richedit има понятията параграф и нов ред.
параграфите се разделят с CR+LF а новите редове бяха само с CR (или LF, не си спомням).
така, че това не е bug в richedit-а, а начин на форматиране на текста.

еднаквия резултат когато взимаш целия текст е защото, wm_gettext взима неформатиран текст, т.е. това което е в richedita се конвертира до текст.

както и да е това не би трябвало да бъде проблем.

казах

Отговор
в отговор на Плaмeн #3

Re: EM_GETSEL i Richedit/Edit

Да. И аз го прочетох скоро това, но ти напълно ми изясни къртинката. 10x
Явно ще трябва да го обработя като изключение...

by Waz Gaa
[email protected]
Отговор