Ich möchte einen Text direkt auf dem Desktop anzeigen lassen.
Ich habe im Internet folgenden Code gefunden:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16:
| var MyHand: HWND; MyDc: HDC; MyCanvas: TCanvas; begin MyHand := GetDesktopWindow; MyDc := GetWindowDC(MyHand); MyCanvas := TCanvas.Create; MyCanvas.Handle := MyDC; BeginPath(MyCanvas.Handle); MyCanvas.Font.Color := clRed; MyCanvas.Font.Name := 'Courier New'; MyCanvas.Font.Size := 30; MyCanvas. SetBkMode(MyCanvas.Handle,TRANSPARENT); EndPath(MyCanvas.Handle); MyCanvas.TextOut(100, 20, ausgabetext); |
Allerdings hat dieser Code einen Nachteil: Wenn man ein Fenster über den Text zieht, verschwindet der Text. Wenn man ihn auf einem Fenster erstellt, das ständig neu gezeichnet wird (z.B. Spiel) verschwindet der Text direkt wieder. Wie kann ich es erreichen, dass
1. der Text stehen bleibt
2. Ich ihn löschen kann (mit Delphi-Befehl)
Danke
Markus