Delphi-PRAXiS
Seite 4 von 5   « Erste     234 5      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Splash Screen Anzeigedauer (https://www.delphipraxis.net/188691-splash-screen-anzeigedauer.html)

mkinzler 30. Mär 2016 11:12

AW: Splash Screen Anzeigedauer
 
Das würde ich aber nicht als SplashScreen sondern als Werbung ansehen.

Der schöne Günther 30. Mär 2016 11:17

AW: Splash Screen Anzeigedauer
 
Ok, ok. Auch die ganzen Valve-Spiele wie Team Fortress und CS: Erstmal das Firmenlogo (das man aber mit ESC abbrechen kann). Viele Spiele schieben auch gerne noch Videoschnipsel von nVidia und Intel oder wer halt gesponsert hat mit ein.

Ich dachte nur an "normale" Anwendungen im Fenster. Meine Theorie ist dass es sich bei Spielen oft so eingebürgert hat da die Titel meist von der Konsole portiert wurden und man dort erst einmal lange Zeit beschäftigt ist von der CD zu lesen...

Normalement 30. Mär 2016 12:00

AW: Splash Screen Anzeigedauer
 
Zitat:

Auf die Weise wird der auch schon angezeigt bevor die initialization Sektionen durchlaufen werden usw.
Mein Splash Screen wird schon vor Application.Initialize; angezeigt :P

Zitat:

Desweiteren kannst du ihm anbieten, dass er einstellt, wie lange er den SS sehen will
Hat so eine Option überhaupt einen Sinn?

himitsu 30. Mär 2016 12:16

AW: Splash Screen Anzeigedauer
 
Wenn das eine VCL-Form ist, dann ist diese Stelle echt blöd, bevor die VCL "offiziell" initialisiert wurde. :stupid:


Man kann sowas auch als "Entwickler"-Funktion anbieten.
z.B. wenn beim Start Strg gedrückt wirde, dann den Dialog länger angezeigen, bzw. noch so lange, wie diese Taste gedrückt wird.

jaenicke 30. Mär 2016 12:18

AW: Splash Screen Anzeigedauer
 
Zitat:

Zitat von Normalement (Beitrag 1334170)
Zitat:

Auf die Weise wird der auch schon angezeigt bevor die initialization Sektionen durchlaufen werden usw.
Mein Splash Screen wird schon vor Application.Initialize; angezeigt :P

Aber nicht vor den Initialisierungsabschnitten aller (!) irgendwo im Projekt direkt oder indirekt eingebundenen Units. Je nachdem was da alles passiert, kann das eine gewisse Zeit dauern. Wenn du den Splashscreen dann erst nach dem begin der Projektdatei anzeigst, ist schon viel Code die CPU hinuntergeflossen. ;-)

Normalement 30. Mär 2016 12:25

AW: Splash Screen Anzeigedauer
 
Zitat:

Zitat von jaenicke (Beitrag 1334175)
Zitat:

Zitat von Normalement (Beitrag 1334170)
Zitat:

Auf die Weise wird der auch schon angezeigt bevor die initialization Sektionen durchlaufen werden usw.
Mein Splash Screen wird schon vor Application.Initialize; angezeigt :P

Aber nicht vor den Initialisierungsabschnitten aller (!) irgendwo im Projekt direkt oder indirekt eingebundenen Units. Je nachdem was da alles passiert, kann das eine gewisse Zeit dauern. Wenn du den Splashscreen dann erst nach dem begin der Projektdatei anzeigst, ist schon viel Code die CPU hinuntergeflossen. ;-)

Ich werde mir das gleich mal angucken und deinen Ratschlag umsetzen.

Zitat:

z.B. wenn beim Start Strg gedrückt wirde, dann den Dialog länger angezeigen, bzw. noch so lange, wie diese Taste gedrückt wird.
Nettes Feature. Entweder funktioniert das bei mir nicht, oder ich bin zu doof dafür :P

himitsu 30. Mär 2016 12:30

AW: Splash Screen Anzeigedauer
 
Du mußt natürlich diese Aktion erst einbauen. :stupid:
Aber ich kenn mehrere Programme, welche an verschiedensten Stellen auf Strg reagieren.

Sir Rufo 30. Mär 2016 12:44

AW: Splash Screen Anzeigedauer
 
Um den Status der STRG-Taste beim Anwendungsstart zu prüfen in der dpr:
Delphi-Quellcode:
uses
  ...
  Winapi.Windows,
  ...;

var
  StrgPressed:Boolean;

begin
  StrgPressed := GetKeyState( VK_CONTROL ) < 0;

  Application.Initialize;
  Application.MainFormOnTaskbar := True;
  Application.CreateForm(TForm1, Form1);
  Application.Run;
end.

Normalement 30. Mär 2016 13:15

AW: Splash Screen Anzeigedauer
 
Delphi-Quellcode:
Application.Initialize;
// ...
while (GetAsyncKeyState(VK_LCONTROL) < 0) do
 // schlafe für ein paar Millisekunden
So habe ich das jetzt mal geregelt. Funktioniert sehr gut und ohne Probleme.
Mit GetKeyState hatte ich das Problem, dass der den Zustand (Resultat von GetKeyState) speichert und nicht zurücksetzt.

jaenicke:
ich habe deinen Vorschlag umgesetzt und ich meine, dass der Dialog nun ein paar Millisekunden früher angezeigt wird :P Fühlt sich jedenfalls anders/besser an.

mm1256 30. Mär 2016 13:36

AW: Splash Screen Anzeigedauer
 
Zitat:

Zitat von Normalement (Beitrag 1334184)
So habe ich das jetzt mal geregelt....

...wobei ich persönlich beim Programmstart die Auswertung der rechten Shift-Taste anstelle der Control-Taste bevorzuge. Word z.B. kann man mit der Strg-Taste im abgesicherten Modus starten und weil das heutzutage ja schon fast jeder User weiß, wird es demzufolge auch bei anderen Apps ausprobiert.

Hinzu kommt: Wenn der Link für die App auf dem Desktop liegt, eine xbeliebige Verknüpfung focusiert ist, und der User dann bei gedrückter Strg-Taste eine andere Verknüpfung anklickt, gibt es machmal schöne Effekte :wink:


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:36 Uhr.
Seite 4 von 5   « Erste     234 5      

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