AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Projekte [Freeware] SnowSaver - Neue Version v. 01.12.
Thema durchsuchen
Ansicht
Themen-Optionen

[Freeware] SnowSaver - Neue Version v. 01.12.

Ein Thema von patti · begonnen am 21. Nov 2007 · letzter Beitrag vom 4. Dez 2007
Antwort Antwort
Seite 4 von 5   « Erste     234 5      
Benutzerbild von patti
patti
Registriert seit: 20. Okt 2004

* SnowSaver *


Hab passend zu der kalten Jahreszeit einen kleinen Screensaver geschrieben, der Schneefall auf dem Monitor simuliert (ja, ich weiß, die Idee ist nicht neu ). Bei dem Screensaver scheint der Desktop transparent durch, weshalb es so ausschaut, als würde es tatsächlich auf dem Monitor schneien

Es werden drei verschiedene Schneeflocken-Größen (kleinere Flocken langsamer, größere schneller) dargestellt, damit es etwas realistischer aussieht. Außerdem bleibt am unteren Bildschirmrand der Schnee liegen (wird nicht höher mit der Zeit; bedeckt bei Standard-Positionierung und -Größe der Win-Taskleiste ungefähr diese mit Schnee).

Zu den "Systemanforderungen": Geschrieben wurde der Bildschirmschoner unter Win 2000 und ist erfolgreich getestet unter 2000, XP und Vista. Wurde unter anderem auf einem 800 Mhz Rechner ausprobiert und läuft auch da ruckelfrei. Der Bildschirmschoner verwendet nur Standard-Komponenten und sollte deswegen unter allen Win-Betriebssystemen laufen.

Nach dem Download die Zip-Datei entpacken und snowsaver.scr ins Windowsverzeichnis kopieren. Im Einstellungen-Dialog kann dann der SnowSaver als Bildschirmschoner ausgewählt werden.

Evtl. wird am SnowSaver noch etwas weitergearbeitet.
Hoffe er gefällt euch!

P@Tti

PS: Auf meiner Homepage (unter Downloads - SnowSaver) kann der SnowSaver ebenfalls gedownloadet werden!

Würde mich natürlich über Rückmeldungen freuen und würde gerne wissen, ob der Screensaver bei euch läuft.

EDIT: Der VirenScanner von McAfee meldet nun keinen Alarm mehr! Das in den nachfolgenden Beiträgen beschriebene Problem besteht also nicht mehr!

Version vom 26.11.2007:
  • drei statt bisher zwei Flocken-Größen
  • leichte links-rechts-Abweichung der Flocken -> wirkt realistischer

Neueste Version vom 01.12.2007:
  • Vorschau-Fenster
  • kleinere Anpassungen
Miniaturansicht angehängter Grafiken
snowsaver5_214.jpg  
Angehängte Dateien
Dateityp: zip snowsaver_161.zip (190,0 KB, 129x aufgerufen)
[Informatik-Student im 4. Semester]
http://www.patti-k.de/
 
Benutzerbild von patti
patti

 
Turbo Delphi für Win32
 
#31
  Alt 23. Nov 2007, 14:25
Eine neue Version ist online, die auch bei einem Tastendruck auf der Tastatur den Screensaver beendet.

P@Tti
Patrick Kreutzer
  Mit Zitat antworten Zitat
Benutzerbild von patti
patti

 
Turbo Delphi für Win32
 
#32
  Alt 26. Nov 2007, 15:01
Habe gerade eben wieder eine neue Version (Version 5) hochgeladen. Zu finden ist diese im ersten Beitrag. Die neuste Version beinhaltet jetzt drei statt bisher zwei verschiedene Flocken-Größen und simuliert jetzt auch eine leichte links-rechst-Abweichung der Flocken (größere Flocken stärker, kleinere Flocken schwächer), was den Screensaver etwas realistischer erscheinen lässt.

Hoffe auf Lob, Kritik, Anregungen, Wünsche,...

P@Tti
Patrick Kreutzer
  Mit Zitat antworten Zitat
Popov
 
#33
  Alt 27. Nov 2007, 02:53
Vielleicht noch paar Tipps und Verbesserungsvorschläge.

Zuerst eine Kleinigkeit die kaum Aufwand bedeutet. Wenn man im Explorer sich die Eigenschaften deines Screensavers anguckt, dann steht unter "Beschreibung" der Dateiname deines Bildschirmschoners ohne die Endung. Das ist keine Katastrophe, aber in der Regel haben Bildschirmschoner hier eine Bezeichnung. Der Text der in den Eigenschaften als Beschreibung dient ist eine der Versionsinfos. Diese kann man in Projektoptionen unter Versionsinfo angeben. Der Betreffende Punkt ist "Beschreibung". Schreib dort eine Bezeichnung die unabhängig vom Dateinamen sein kann.

Eine zweite etwas größere Kleinigkeit ist die fehlende Vorschau im Prieviewfenster unter "Eingenschaften von Anzeige" > "Bildschirmschoner". Das Prieviewfenster kann entweder das Fenster des Bildschirmschoners sein, das etwas modifiziert beim Parameter /p abgespielt wird, oder ein eigenes Fenster. Bei der ersten Methode muß man einiges abfangen. So darf das Fenster nicht bei Tastendrücken und Mausbewegungen beendet werden und muß auch auf einer kleinen Fläche noch gut aussehen. Also keine 100 Flocken im Minifenster. Die andere Möglichkeit ist ein Extrafenster. Hier kann man einfach auch nur ein Bild von einer Flocke zeigen. Bei dir wird momentan ein schwarzer Bildschirm angezeigt. Da fehlt also etwas.

Hier paar Zeilen:

Delphi-Quellcode:
      'P': begin
             Application.Initialize;
             Application.CreateForm(TPreviewForm, PreviewForm);
             Application.Run;
               end;
Zum richtigen ansteuern in der Projektdatei.

Delphi-Quellcode:
procedure ScreenSaverPreview(Form: TForm);
var
  OldStyle: Integer;
  hWnd: THandle;
  Rec: TRect;
begin
  with Form do
  begin
    hWnd := StrToIntDef(ParamStr(2), 0);
    GetWindowRect(hWnd, Rec);
    SetBounds(0, 0, Rec.Right - Rec.Left, Rec.Bottom - Rec.Top);

    BorderStyle := bsNone;

    Windows.SetParent(Handle, hWnd);

    OldStyle := GetWindowLong(Handle, GWL_STYLE);
    SetWindowLong(Handle, GWL_STYLE, (OldStyle and not WS_POPUP) or WS_CHILD or WS_VISIBLE);
  end;

end; {Popov}

procedure TPreviewForm.FormCreate(Sender: TObject);
begin
  ScreenSaverPreview(Self);


end;
Hier ist alles was du für das Previewfenster brauchst. Es holt den Parameter, wandelt den um, paßt die Fenstergröße an, setzte das Parentfenster usw. Das Einzige was du noch machen mußt ist verhindern, daß das Fenster in der Taskleiste angezeigt wird und das Fenster mit einem Inhalt füllen.
  Mit Zitat antworten Zitat
Benutzerbild von patti
patti

 
Turbo Delphi für Win32
 
#34
  Alt 27. Nov 2007, 15:41
Danke für die Verbesserungsvorschläge

zu 1.) hatte es mal als Compiler-Direktive drin:

{$D SCRNSAVE:Mein Bildschirmschoner} hat aber nicht funktioniert Werde es mit deinem Tipp versuchen!

zu 2.) Vorschau-Fenster ist auf jeden Fall geplant und ich hab auch schon die Suche bemüht, hab allerdings noch keine Zeit zum Einbauen gehabt. Werde deinen Code gleich nehmen und mit einbauen!

P@Tti
Patrick Kreutzer
  Mit Zitat antworten Zitat
Popov
 
#35
  Alt 27. Nov 2007, 16:03
Zitat von patti:
Danke für die Verbesserungsvorschläge

zu 1.) hatte es mal als Compiler-Direktive drin:

{$D SCRNSAVE:Mein Bildschirmschoner} hat aber nicht funktioniert Werde es mit deinem Tipp versuchen!
Nein, es funktioniert nicht und wird auch nicht funktioniert. Hier sprechen an die 50 Mannstunden die sich der Lösung des Problems gewidmet haben. Diese Info kommt aus der Zeit von Windows 3.x. Damals unter Delphi 1 mag es noch funktioniert haben, seit der Zeit garantiert nicht mehr. Auch wenn es so gut wie in jeder Screensaver Anleitung steht.

Möglich ist es, aber nicht so.

Der Tipp von mir setzt aber keinen Screensaver Namen, sondern nur die Beschreibung im Eigenschaftenfenster.
  Mit Zitat antworten Zitat
Benutzerbild von patti
patti

 
Turbo Delphi für Win32
 
#36
  Alt 27. Nov 2007, 17:07
Hab durch ausprobieren gemerkt, dass der Tipp keinen Screensaver-Namen setzt
Die Beschreibung im Eigenschaften-Fenster hab ich jetzt schon drinnen (Version ist derzeit noch nicht online). Das Preeview-Fenster steht allerdings weiterhin auf der ToDo-Liste

P@Tti
Patrick Kreutzer
  Mit Zitat antworten Zitat
ScrollbarKopf
 
#37
  Alt 1. Dez 2007, 00:03
Finde den screensaver klasse bei mir hat er auch keinen Virus gefunden
  Mit Zitat antworten Zitat
Benutzerbild von patti
patti

 
Turbo Delphi für Win32
 
#38
  Alt 1. Dez 2007, 10:05
^^Danke

Hab gerade eben eine neue Version hochgeladen, die ein Vorschau-Fenster beinhaltet und die vom Aufbau her noch etwas verbessert wurde. Datei liegt im ersten Post!

P@Tti
Patrick Kreutzer
  Mit Zitat antworten Zitat
Benutzerbild von divBy0
divBy0

 
Delphi XE2 Professional
 
#39
  Alt 1. Dez 2007, 11:30
Der Screensaver gefällt mir echt gut, den lasse ich mal drauf...

Was mir allerdins aufgefallen ist: Der Screensaver läuft nur auf dem Primärdisplay... Wäre schön, wenn der auch auf dem Sekundärdisplay funktioniert... (Sorry, falls das schon mal geschrieben wurde, hab' nicht alles durchgelesen )

Ansonsten echt gut!
Marc
  Mit Zitat antworten Zitat
ScrollbarKopf
 
#40
  Alt 3. Dez 2007, 20:49
Die neue Version ist noch besser kannst mir vieleicht den code mal schicken dass ich es nachprogrammieren kann und verändern kann
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 4 von 5   « Erste     234 5      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:13 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