Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Bildschirmschoner unterdrücken (https://www.delphipraxis.net/52911-bildschirmschoner-unterdruecken.html)

PierreB 6. Sep 2005 16:59


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 ;)

marabu 6. Sep 2005 17:11

Re: Bildschirmschoner unterdrücken
 
Hi Pierre,

wenn du den screen saver vorübergehend deaktivieren möchtest:

Delphi-Quellcode:
const
  SSON = 1;
  SSOFF = 0;
begin
  SystemParametersInfo(SPI_SETSCREENSAVEACTIVE, SSOFF, nil, 0);
end;
Grüße vom marabu

PierreB 6. Sep 2005 17:20

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) ;)

Die Muhkuh 6. Sep 2005 17:43

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?

marabu 6. Sep 2005 17:48

Re: Bildschirmschoner unterdrücken
 
Mit der Message geht es so:

Delphi-Quellcode:
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;
marabu

PierreB 6. Sep 2005 17:49

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 :-)

Robert Marquardt 6. Sep 2005 17:52

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.

PierreB 8. Sep 2005 15:20

Re: Bildschirmschoner unterdrücken
 
Zitat:

Zitat von Robert Marquardt
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.

Moin Robert,

wenn du die Komponente dann fertig hast, wäre ich gerne bereit sie zu testen. :-D

Robert Marquardt 8. Sep 2005 17:07

Re: Bildschirmschoner unterdrücken
 
Ist schon im CVS der JVCL. Funktionieren tut sie auch.

Mutier 31. Jul 2006 09:14

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 21:29 Uhr.
Seite 1 von 2  1 2      

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