![]() |
Bildschirmschoner unterdrücken
Moinsen :hi:
einfache Frage aber leider keine Ahnung von der Antwort: Mein Programm soll immer im Vordergrund sein, wie kann ich also verhindern das sich ein Bildschirmschoner einschaltet ? Wie mach ich das am besten ? Thx schonmal ;) |
Re: Bildschirmschoner unterdrücken
Hi Pierre,
wenn du den screen saver vorübergehend deaktivieren möchtest:
Delphi-Quellcode:
Grüße vom marabu
const
SSON = 1; SSOFF = 0; begin SystemParametersInfo(SPI_SETSCREENSAVEACTIVE, SSOFF, nil, 0); end; |
Re: Bildschirmschoner unterdrücken
Moin marabu,
vielen Dank erstmal für deine Antwort, aber eigentlich möchte ihn nicht deaktivieren sondern nur verhindern das er gestartet wird. Wenn er gestartet wird muss es doch irgendein Event geben, dass man abfangen könnte, oder ? (Wenns sowas net geht dann mach ichs halt per marabus Tipp) ;) |
Re: Bildschirmschoner unterdrücken
Ähm?
Ob du nun deaktivierst oder ne Message abfangst und die verarbeitest, ist doch wurscht? Oder willst du noch was spezielles machen, wenn der Bildschirmschoner losgeht? |
Re: Bildschirmschoner unterdrücken
Mit der Message geht es so:
Delphi-Quellcode:
marabu
procedure TMainForm.AppMessage(var Msg: TMsg; var Handled: boolean);
begin if (Msg.Message = WM_SYSCOMMAND) and (Msg.wParam = SC_SCREENSAVE) then Handled := true; end; procedure TMainForm.FormCreate(Sender: TObject); begin Application.OnMessage := AppMessage; end; |
Re: Bildschirmschoner unterdrücken
Naja, also wenn meine Anwendung auf dem Desktop ist soll der Bildschirmschoner gar nicht erst angehen. Wenn meine Anwendung aber minimiert ist, kann er angehen und wenn ich ihn ganz deaktiviere geht er ja überhaupt nicht mehr an...
@marabu: thx, ich gucke mal :-) |
Re: Bildschirmschoner unterdrücken
marabu hat es beantwortet. Ich habe gerade letztens eine Komponente zur JVCL hinzugefuegt, die die Multimediatasten unterdrueckt solange das Programm im Vordergrund ist. Das mit dem Screensaver presse ich auch noch in eine Komponente.
|
Re: Bildschirmschoner unterdrücken
Zitat:
wenn du die Komponente dann fertig hast, wäre ich gerne bereit sie zu testen. :-D |
Re: Bildschirmschoner unterdrücken
Ist schon im CVS der JVCL. Funktionieren tut sie auch.
|
Re: Bildschirmschoner unterdrücken
... verhindert diese Funktion den Start des Screensavers auch in dem Fall, in dem ein selbstgeschriebenes Programm zwar auf dem Bildschirm zu sehen ist, aber nicht den Fokus hat? Genau in diesem Fall greifen die anderen Ansätze (Appmessage) nicht.
Ciao Mutier |
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:40 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