![]() |
...das Wort unter dem Maus-Cursor auslesen?
Hallo ;)
Wie kann ich ...das Wort unter dem Maus-Cursor auslesen, Systemweit? Hiermit kann ich das Wort unter dem Maus-Cursor in einem Richedit auslesen.
Delphi-Quellcode:
uses
RichEdit; procedure TForm1.RichEdit1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); var iCharIndex, iLineIndex, iCharOffset, i, j: Integer; Pt: TPoint; s: string; begin with TRichEdit(Sender) do begin Pt := Point(X, Y); // Get Character Index from word under the cursor iCharIndex := Perform(Messages.EM_CHARFROMPOS, 0, Integer(@Pt)); if iCharIndex < 0 then Exit; // Get line Index iLineIndex := Perform(EM_EXLINEFROMCHAR, 0, iCharIndex); iCharOffset := iCharIndex - Perform(EM_LINEINDEX, iLineIndex, 0); if Lines.Count - 1 < iLineIndex then Exit; // store the current line in a variable s := Lines[iLineIndex]; // Search the beginning of the word i := iCharOffset + 1; while (i > 0) and (s[i] <> ' ') do Dec(i); // Search the end of the word j := iCharOffset + 1; while (j <= Length(s)) and (s[j] <> ' ') do Inc(j); // Display Text under Cursor Caption := Copy(s, i, j - i); end; end; |
Re: ...das Wort unter dem Maus-Cursor auslesen?
Wenn du beliebige Wörter - also auch solche, die direkt gezeichnet wurden - auslesen willst, dürfte das schwierig werden. Dazu müsstest du dir nämlich eine Art OCR-Routine schreiben, die grafischen Text in Strings umwandeln kann.
|
Re: ...das Wort unter dem Maus-Cursor auslesen?
Es soll nur aus Text ausgelesen werden nicht aus Grafiken.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:05 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz