Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Wie schnell reagiert Delphi (https://www.delphipraxis.net/100563-wie-schnell-reagiert-delphi.html)

turboPASCAL 1. Okt 2007 03:55

Re: Wie schnell reagiert Delphi
 
Zitat:

Zitat von taktaky
Leider kann man keinen Timer auf Panel anlegen.

Och, der liegt doch da sehr gut. :mrgreen:

Ein Timer ist eine nicht visuelle Komponente, du musst das schon im Quelltext regeln.

DeddyH 1. Okt 2007 07:58

Re: Wie schnell reagiert Delphi
 
Versuch es mal so auf Form1:
Delphi-Quellcode:
procedure TForm1.Timer1Timer(Sender: TObject);
begin
  if PtInRect(Rect(0,0,Panel1.Width,Panel1.Height),
              Panel1.ScreenToClient(Mouse.CursorPos)) and not Form2.Visible then
    Form2.Show;
end;
Du musst auch beachten, ob Form2 bereits sichtbar ist. ;)

taktaky 18. Okt 2007 22:01

Re: Wie schnell reagiert Delphi
 
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:

Zitat von DeddyH
Versuch es mal so auf Form1:
Delphi-Quellcode:
procedure TForm1.Timer1Timer(Sender: TObject);
begin
  if PtInRect(Rect(0,0,Panel1.Width,Panel1.Height),
              Panel1.ScreenToClient(Mouse.CursorPos)) and not Form2.Visible then
    Form2.Show;
end;
Du musst auch beachten, ob Form2 bereits sichtbar ist. ;)

Hallo,

Es geht weiter :mrgreen:
Die Idee ist super. Das ist aber beim Schließen
Ich möchte auch das Form2 wieder anzeigen lassen möchte, nur wenn der Cursor auf Panel kommt
Aber natürlich ganz schnell, genau wie der Code Oben

Den Code oben kann ich nicht in Form1 anlegen, da ich das Form2 nur anzeigen lassen, wenn der Cursor auf Panel bewegt.
Kann man noch einen Timer auf Form1, der nur reagiert, wenn der Cursor auf Panel kommt?

Muetze1 18. Okt 2007 23:29

Re: Wie schnell reagiert Delphi
 
Informier dich mal über die VCL Botschaften Delphi-Referenz durchsuchenCM_MOUSEENTER und Delphi-Referenz durchsuchenCM_MOUSELEAVE

taktaky 18. Okt 2007 23:59

Re: Wie schnell reagiert Delphi
 
Zitat:

Zitat von Muetze1
Informier dich mal über die VCL Botschaften Delphi-Referenz durchsuchenCM_MOUSEENTER und Delphi-Referenz durchsuchenCM_MOUSELEAVE

sind die besser als der Code oben?

Allerdings habe ich den Code nun verbessert
Form2 wird angezeigt nur wenn der Cursor auf Panel kommt :thumb:
Delphi-Quellcode:
procedure TForm1.Timer1Timer(Sender: TObject);
begin
  if PtInRect(Rect(left+panel1.Left,top+panel1.Top,left+panel1.Left + panel1.Width, top+panel1.Top + panel1.Height),Mouse.CursorPos) then
    Form2.ShowModal();
end;
Ein kleines Problem: Form2 wird zwar angezeigt aber nur wenn der Cursor fast in der Mitte von dem Panel ! :gruebel:


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:06 Uhr.
Seite 2 von 2     12   

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