Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Delphi Fenster über Taskleiste einblenden (https://www.delphipraxis.net/155930-fenster-ueber-taskleiste-einblenden.html)

WizoHulk 13. Nov 2010 16:47

Fenster über Taskleiste einblenden
 
Hi Leute,

Ich hab ein Problem, wie kann ich meine Form über der Taskleiste in der Rechten Ecke einblenden Lassen?
Zur Laufzeit ist Die Form.Height := 0 und soll mit einem Timer vergrößert werden.
Das es so aussieht als wenn die Form in den Bildschirm von unten rein fährt.

SirThornberry 13. Nov 2010 16:53

AW: Fenster über Taskleiste einblenden
 
Und was machst du wenn jemand die Taskleiste link, rechts oder eben hat? Soll dein Fenster wirklich aus der Taskleiste heraus fahren oder immer am unteren Bildschirmrand? Wenn es nicht unbedingt die Taskleiste sein muss währe für dich interessant die WorkArea (oder so ähnlich) zu ermitteln und entsprechend zu ermitteln in welchem Bereich "normale" Fenster dargestellt werden.
[Edit] Wenn ich mich richtig erinnere gibt es glaub ich sogar eine Api-Funktion für deinen Effekt womit verhindert wird das du dein Form wirklich ständig in der Größe änderst und die Controls darauf entsprechend mit reagieren
[Edit]AnimateWindow ist die Funktion welche für dich interessant sein sollte

Bummi 13. Nov 2010 16:56

AW: Fenster über Taskleiste einblenden
 
Fake, aber vielleicht trotzdem?
Delphi-Quellcode:
procedure TForm2.FormCreate(Sender: TObject);
begin
    Height := 0;
    left := Screen.Width - Width;
    top := Screen.Height;
    Timer2.enabled := false;
    Timer1.enabled := true;
end;

procedure TForm2.Timer1Timer(Sender: TObject);
begin
   Timer1.Enabled := false;
   Timer2.Enabled := true;
end;

procedure TForm2.Timer2Timer(Sender: TObject);
begin
   if Height > 300 then Timer1.Enabled := false
   else
    begin
      LockWindowUpdate(Handle);
      try
        Height := Height + 5;
        top := Screen.Height - Height;
      finally
        Lockwindowupdate(0);
      Application.BringToFront;
      end;
    end;
end;

SirThornberry 13. Nov 2010 16:59

AW: Fenster über Taskleiste einblenden
 
Du gehst aber von der gesamten Höhe der Auflösung aus oder sehe ich das falsch? somit würde das Fenster ja hinter/über der Taskleiste landen oder nicht? Aber ich glaube gewünscht war, dass das Fenster über der Taskleiste rausfährt.

Bummi 13. Nov 2010 17:03

AW: Fenster über Taskleiste einblenden
 
kann sein dass ich es falsch verstanden habe, aber Lösungen gibt es ja für alle Fälle, entweder oberhalb anfangen wenn sie sichtbar ist, oder drüberlegen per Formstyle=fsStayOnTop...

Assarbad 13. Nov 2010 17:08

AW: Fenster über Taskleiste einblenden
 
Och Leute, nu sagt ihm doch wenigstens mal, daß es Unsinn ist. Schon bei Timer juckt's mir mächtig in den Fingern.

@Bummi: SirThornberry wollte darauf hinaus, daß es um die Working Area und nicht die Screen Area geht ;)

SirThornberry 13. Nov 2010 17:23

AW: Fenster über Taskleiste einblenden
 
Zitat:

Zitat von Assarbad (Beitrag 1061300)
Och Leute, nu sagt ihm doch wenigstens mal, daß es Unsinn ist.

Das wollte ich dir überlassen :wink: Recht hast du natürlich (zumindest aus meiner Sicht) aber so wie es klingt geht es hier nicht um ein Programm was andere später in seriösem Umfeld nutzen sollen sondern es klingt eher noch privater Nutzung für sich selbst.

Assarbad 13. Nov 2010 17:28

AW: Fenster über Taskleiste einblenden
 
Zitat:

Zitat von SirThornberry (Beitrag 1061305)
[...] aber so wie es klingt geht es hier nicht um ein Programm was andere später in seriösem Umfeld nutzen sollen sondern es klingt eher noch privater Nutzung für sich selbst.

Fair enough. I rest my case, Sir(Thornberry)! :zwinker:

WizoHulk 13. Nov 2010 17:45

AW: Fenster über Taskleiste einblenden
 
soweit ist es ja genau das was ich suche, aber er startet von ganz unten, kann man das auch so machen, das er von der taskleiste aus startet?

SirThornberry 13. Nov 2010 17:47

AW: Fenster über Taskleiste einblenden
 
Ja, das Stichwort war hier workarea


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:32 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