|
#1
|
||||
|
||||
Буфер обмена
Привет друзья. Подскажите пожалуйста в решений одного вопроса. Мне нужно реализовать такой момент, к примеру я скопировал адрес сайта в буфер, и сразу после этого он должен попасть в edit1. В принципе я могу работать с буфером, я не могу понять как сделать так что бы если в буфер у нас скопирован адрес сайта, что бы он попадал в edit1, а если какой нибудь другой текст, либо какая нибудь другая информация, находится в буфере то, что бы это как то пропускалось, не попадала в edit1. Заранее спасибо
|
#2
|
||||
|
||||
=)
Нашел вот такую функцию на форуме
Код:
function GetClipboardText(Wnd: HWND; var Str: string): Boolean; var hData: HGlobal; begin Result := True; if OpenClipboard(Wnd) then begin try hData := GetClipboardData(CF_TEXT); if hData <> 0 then begin try SetString(Str, PChar(GlobalLock(hData)), GlobalSize(hData)); finally GlobalUnlock(hData); end; end else Result := False; Str := PChar(@Str[1]); finally CloseClipboard; end; end else Result := False; end; Код:
procedure TForm1.Button5Click(Sender: TObject); var Str: string; begin GetClipboardText(Handle, Str); ShowMessage(Str) end; end. |
#3
|
||||
|
||||
TClipBoard в помощь
Цитата:
Код:
if ClipBoard.HasFormat(CF_TEXT) and (Pos('http://',ClipBoard.AsText)>0) then Понять, что хочет заказчик - бесценно, ведь он платит MasterCard Последний раз редактировалось cotseec, 05.04.2013 в 17:05. |
Этот пользователь сказал Спасибо cotseec за это полезное сообщение: | ||
borockov (05.04.2013)
|
#4
|
||||
|
||||
)
Ну это в принципе не проблема)) спасибо за код)))
|