Array
(
)

Area de Transferencia

Foxcyber
   - 08 mar 2006

Como pego um texto de um memo e depois jogo na area de transferencia para poder colar no bloco de notas, ou no word etc...


Adriano Santos
   - 08 mar 2006

Veja se é isso que precisa
#Código


procedure TForm1.Button1Click(Sender: TObject);
var
wnd: HWND;
i: Integer;
s: string;
begin
wnd := FindWindow(nil, ´Form2´);
if wnd <> 0 then
begin
for i := 0 to TApplication(wnd).ComponentCount - 1 do
begin
if TForm(wnd).Components[i] is TEdit then
TEdit(TForm(wnd).Components[i]).Text := ´Ola´;
end;
wnd := FindWindowEx(wnd,0,´Edit1´,nil);

s := ´Seu Texto para ser escrito no bloco de notas :))´;
For i := 1 to Length(s) do
SendMessage(wnd, WM_CHAR, Word(s[i]), 0);

PostMessage(wnd, WM_KEYDOWN , VK_RETURN, 0); {ENTER}
PostMessage(wnd, WM_KEYDOWN , VK_SPACE, 0); {ESPAÇO}
end;
end;



Adriano Santos
   - 08 mar 2006

Esquece o tópico de cima, falei besteira.
Desculpe.

#Código


procedure TForm1.Button1Click(Sender: TObject);
var
NotePad, Edit: HWND;
I : Integer;
Linha : String;
begin
NotePad := FindWindow(´Notepad´, nil);
if NotePad <> 0 then
begin
Edit := FindWindowEx(NotePad, 0, ´Edit´, nil);
if Edit <> 0 then
begin
Linha := Memo1.Lines.Text;
for I := 0 to Length(Linha) do
PostMessage(Edit, WM_CHAR, Ord(Linha[I]), 0);
end;
end;
end;



Michael
   - 08 mar 2006

Acho que o que o colega FoxCyber quer é mais simples Adriano.

#Código

Memo1.CopyToClipboard;


E se quiser fazer ´na mão´:

#Código
uses Clipbrd;
...
begin
Clipboard.AsText := ´Texto copiado para a área de transferência´;
end;


Se vc quiser usar isso para trocar dados entre sua aplicação e outra, como o Notepad, por exemplo - então a dica do Adriano é mais interessante.

[]´s


Adriano Santos
   - 08 mar 2006


Citação:
Acho que o que o colega FoxCyber quer é mais simples Adriano.

#Código

Memo1.CopyToClipboard;


E se quiser fazer ´na mão´:

#Código
uses Clipbrd;
...
begin
Clipboard.AsText := ´Texto copiado para a área de transferência´;
end;


Se vc quiser usar isso para trocar dados entre sua aplicação e outra, como o Notepad, por exemplo - então a dica do Adriano é mais interessante.

[]´s

Oi Michael, sabe que quase nunca lembro das funções que você mencinou? :P.

[]s

FoxCyber, acho que isso te ajuda, mas se ainda tiver algum problema pode contar...flw.