Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.06.14;
Скачать: CL | DM;

Вниз

Номер EM_GETSELTEXT   Найти похожие ветки 

 
ANB ©   (2005-04-21 13:55) [0]

Подскажите, какой номер у сообщения EM_GETSELTEXT, а то у меня в Windows.pas его нету. Или какой модуль заюзать по такому случаю.


 
ANB ©   (2005-04-21 14:04) [1]

И в Messages тоже. :(


 
Юрий Зотов ©   (2005-04-21 14:19) [2]

В RichEdit.pas:
EM_GETSELTEXT = WM_USER + 62;

На будущее - в Delphi есть поиск строки в файлах.


 
ANB ©   (2005-04-21 14:45) [3]

Спасибо. Я, правда, уже сам нашел. Только вопрос - а почему он для эдитов не отрабатывает ? EM_REPLACESEL работает же.


 
mgcr ©   (2005-04-21 14:54) [4]

"The EM_GETSELTEXT message retrieves the currently selected text in a rich edit control."

Наверное, поэтому ? Я угадал ?


 
ANB ©   (2005-04-21 15:04) [5]


> mgcr ©   (21.04.05 14:54) [4]
да читал я это. Хотелось попробовать. А что взамен ?
Пытаюсь заюзать EM_GETLINE, но у него хитрое описание буфера :
lpch -
Value of lParam. Points to the buffer that receives a copy of the line. The first word of the buffer specifies the maximum number of characters that can be copied to the buffer.
Пробую подсунуть адрес String, он примерно так и устроен, но ни фига не работает.

Size := SendMessage(hControl, EM_LINELENGTH, 0, 0);
SetLength(sText, Size);
Size := SendMessage(hControl, EM_GETLINE, 0, LongWord(@sText));


 
ANB ©   (2005-04-21 15:23) [6]

Уфф, уж мне эти мелкософтовые. Вот так работает :

var sText : String;
. . .
Size := SendMessage(hControl, EM_LINELENGTH, 0, 0);
SetLength(sText, Size);
TextLen := @sText[1];
TextLen^ := Size;
Size := SendMessage(hControl, EM_GETLINE, 0, LongWord(PChar(sText)));
SetLength(sText, Size);


 
mgcr ©   (2005-04-21 15:30) [7]


> А что взамен ?


А это смотря чего ты хочешь получить.


 
ANB ©   (2005-04-21 15:35) [8]


> А это смотря чего ты хочешь получить.
- читай внимательно :


> Вот так работает :

Получить нужно было текст эдита. Интересно, как народ только выделенный текст получает ? Мне то это не нужно, а все таки ?


 
mgcr ©   (2005-04-21 17:31) [9]


> Интересно, как народ только выделенный текст получает ?
>


Наверное по-простому - WM_COPY и из Clipboard :)


 
ANB ©   (2005-04-21 17:53) [10]

Не оригинально. А если буфер чем то полезным для юзера заполнен ? Вообще то можно вытащить параметры выделения и самому разобрать строку . . .


 
alpet ©   (2005-04-21 18:17) [11]

>Интересно, как народ только выделенный текст получает ?
EM_GETSELTEXT ??


 
ANB ©   (2005-04-22 09:21) [12]


> alpet ©   (21.04.05 18:17) [11]
см. историю вопроса - не работает.


 
mgcr ©   (2005-04-22 10:24) [13]

ANB ©   (21.04.05 17:53) [10]


> Не оригинально


Я в очереди в патентное бюро не стою.


> А если буфер чем то полезным для юзера заполнен ?


Тогда твою программу не надо запускать.


> Вообще то можно вытащить параметры выделения и самому разобрать
> строку . . .


Можно. Только кода писать надо побольше.


 
alpet ©   (2005-04-22 10:25) [14]

ANB ©   (22.04.05 09:21) [12]
>см. историю вопроса - не работает.

Мда. Понятно - WM_USER + ххх обычным контролам such as Edit должны быть по барабану. Для multiline Edit контрола могу также предложить EM_GETHANDLE, правда она дает лищь дескриптор блока памяти и в другом процессе извлекать его содержимое будет сложнее.


 
ANB ©   (2005-04-22 10:59) [15]


> Можно. Только кода писать надо побольше.
ну, строк на 5-10. Зато универсально и никому не мешает.
У буфера есть еще минус. Моя прога может работать в фоновом режиме, и, пока она какое нибудь приложение тестит, тестер может пока в ворде чего нибудь писать и буфер юзать. И тут либо мы ему буфер за...гадим, либо он нам может умудриться.



Страницы: 1 вся ветка

Текущий архив: 2005.06.14;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.048 c
1-1117193280
Laster
2005-05-27 15:28
2005.06.14
Как можно сохранить файл NotifyEvent


3-1114784643
slaga
2005-04-29 18:24
2005.06.14
Ожидание подключения к удаленой БД


14-1117166797
Иксик
2005-05-27 08:06
2005.06.14
BTC


1-1117214654
Gorger
2005-05-27 21:24
2005.06.14
В поток передаю канвас...


4-1114175557
ANB
2005-04-22 17:12
2005.06.14
Как включить/выключить конкретный элемент TCheckListBox