Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Ocr_hand (https://www.delphipraxis.net/170704-ocr_hand.html)

Satyr 29. Sep 2012 16:06

Ocr_hand
 
Huhu,

ich wechsele für mein Programm grade zur Laufzeit einige Cursor aus. Klappt im Grunde auch Prima. Nur nicht bei OCR_HAND. Laut Google Suche verwendet Delphi bei diesem einen Cursor nicht den Windows Standard sondern einen eigenen, weshalb ich diesen nicht tauschen kann.
Ich hab viele Beispiele gefunden wie ich den Windows Standard Cursor einbinden kann, nicht aber wie meinen eigenen.
Mein Code zum Cursorwechsel ist:

Delphi-Quellcode:
[..]
  hp:=LoadImage(0, PChar(ExtractFilePath(Application.Exename) + '..\img\cursor\pointer.cur'), IMAGE_CURSOR, 0, 0, LR_DEFAULTSIZE or LR_LOADFROMFILE);
  if hp=0 then ShowMessage('Pointer Cursor not found')
  else begin
    Screen.Cursors[3]:=hp;
  end;
[..]

SetSystemCursor(Screen.Cursors[3],OCR_HAND);
Wie gesagt, funktioniert bei allen Cursorn außer OCR_HAND. Was muss ich ändern damit das auch da geht?

Gruß,
Andreas

himitsu 29. Sep 2012 17:20

AW: Ocr_hand
 
Wenn du schon weißt, daß Delphi hier nicht den SystemCursor verwendet, dann kann es vermutlich nicht viel bringen, wenn man versucht den SystemCurser auszutauschen, welcher dann eh nicht verwendet wird. :stupid:

Du könntest es mal mit Screen.Cursors versuchen.
Ansonsten hast du die VCL-Quellcodes und da müßtest du einfach mal nachsehn, wo Delphi den Cursor herholt und dann rausfinden, wo man dieses ändert. :stupid:

Satyr 29. Sep 2012 17:28

AW: Ocr_hand
 
Von der Theorie dachte ich mir das so. Ich durchsuche nur schon seit ner Woche die entsprechenden Units, ohne zu finden was ich überschreiben müsste *grml*.

Satyr 29. Sep 2012 19:47

AW: Ocr_hand
 
Hab die Lösung im Embarcado Forum gefunden.
Einfach bevor alle Cursor ausgetauscht werden, diese Zeile einfügen:

Delphi-Quellcode:
Screen.Cursors[crHandPoint] := LoadCursor(0,IDC_HAND);


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:50 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz