tekst pod kursorem

0

cześć, próbuje napisać progra który przechwyci tekst pod kursoem z innej aplikacji i przekaże go do zmiennej string, ja na razie wyszukałem na forum cos takiego:

Uchwyt: HWND;
Tekst: array [0..255] of char;
...
Uchwyt:=WindowFromPoint(Mouse.CursorPos);
SendMessage(Uchwyt, WM_GETTEXT, SizeOf(Tekst), integer(@Tekst));
//Tekst;
//result:= Tekst;
label1.Caption:= tekst;
...

problem w tym, że kod zwraca nazwe okna (chyba chodzi o label) a ja potrzebuje zawartość pola edycyjnego :( jak to przerobić? pomocy!

0
jaro12 napisał(a)

Uchwyt:=WindowFromPoint(Mouse.CursorPos);

Może ta funkcja zwraca uchwyt okna głównego a ty potrzebujesz uchwytu to TEdit wiec musisz jeszcze z jakiegos FindWindowEx skorzystac... [???] nie wiem czy mam racje... :P

0

Kiedys probowalem:

GetWindowText(wHandle, Title, SizeOf(Title));

przy uchwytach okien zwracal nazwe okna, a przy uchwytach Edit'ow (o ile dobrze pamietam :P) zwracal text w tym edit'cie.
Tylko byly chyba klopoty z programami napisanymi w Delphi :/
Nie pamietam bo to taaaak dawno bylo. :)

0

<ort>niepomaga </ort>:(, ten drugi program jest napisany w LabWindows albo LabView

a może inaczej, zrobiłem zaznaczenie tekstu w polu edit, może da się go teraz jakoś skopiować symulując naciskanie przycisków z klawiatury??

0
jaro12 napisał(a)

może da się go teraz jakoś skopiować symulując naciskanie przycisków z klawiatury??

Nic <ort>prostrzego</ort>:
Wysylasz SendKey'a ktory symuluje nacisniecie Ctrl+C :D
Wada: w jaki sposob sprawdzic ze w danym monecie ma wyslac taka informacje ?? :P


Opis SendKeya byl gdzies w artach 4p

0

zrobiłem cos takiego:

keybd_event(VK_LCONTROL,0,0,0);

ale nie wiem jak 'uruchomic" klawisz C , no i jak później przechwyciś zawartość ze schowka do zmiennej integer albo string :(

0

Zobacz Może TO zadziała:

Memo1.PasteFromClipboard;

może sie przyda, po modyfikacji

1 użytkowników online, w tym zalogowanych: 0, gości: 1