AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Rahmen berührt ?

Ein Thema von -=cats=- · begonnen am 16. Nov 2006 · letzter Beitrag vom 16. Nov 2006
Antwort Antwort
Benutzerbild von -=cats=-
-=cats=-

Registriert seit: 22. Sep 2006
128 Beiträge
 
Delphi 7 Enterprise
 
#1

Rahmen berührt ?

  Alt 16. Nov 2006, 08:35
Hi

Gibt es eine Möglichkeit zu überprüfen,
ob der Benutzer mit dem Mauszeiger den rechten Rand
der Form berührt hat ?

Ich habe es mal so probiert:

Delphi-Quellcode:
 procedure TForm1.FormCreate(Sender: TObject);
begin
 if
   (Mouse.CursorPos.X = Self.Width)
 then
   JvNavigationPane1.Visible := true;
end;
Wenn ich es mit Screen.Width probiere, geht es auch nicht
Liegt es vielleicht daran, das ich das in eine Endlosschleife
schreiben müsste ? Damit er das ständig überprüft ?
Aber das wäre ja blöd. Ich kann ja nicht die ganze Zeit so eine
Schleife laufen lassen ...

Gruß,
-=cats=-
  Mit Zitat antworten Zitat
Hawkeye219

Registriert seit: 18. Feb 2006
Ort: Stolberg
2.227 Beiträge
 
Delphi 2010 Professional
 
#2

Re: Rahmen berührt ?

  Alt 16. Nov 2006, 09:11
Hi,

du könntest die Nachricht WM_NCMOUSEMOVE abfangen:

Delphi-Quellcode:
type
  TForm1 = class (TForm)
  private
    procedure WMNCMouseMove (var aMsg: TWMNCMouseMove); message WM_NCMOUSEMOVE;
  end;

procedure TForm1.WMNCMouseMove (var aMsg: TWMNCMouseMove);
begin
  inherited;
  Caption := Format('%d: code=%.8x', [GetTickCount, aMsg.HitTest]);
  if (aMsg.HitTest = HTRIGHT) then
    Caption := Caption + ' *rechter Rand*';
end;
Gruß Hawkeye
  Mit Zitat antworten Zitat
Benutzerbild von -=cats=-
-=cats=-

Registriert seit: 22. Sep 2006
128 Beiträge
 
Delphi 7 Enterprise
 
#3

Re: Rahmen berührt ?

  Alt 16. Nov 2006, 09:15
Cool vielen Dank !!
Das funktioniert

Nur leider klappt es nicht, wenn die Form Vollbild ist ...
  Mit Zitat antworten Zitat
xaromz

Registriert seit: 18. Mär 2005
1.682 Beiträge
 
Delphi 2006 Enterprise
 
#4

Re: Rahmen berührt ?

  Alt 16. Nov 2006, 11:11
Hallo,
Zitat von -=cats=-:
Nur leider klappt es nicht, wenn die Form Vollbild ist ...
das ist logisch. Im maximierten Zustand besitzt ein Form keinen Rand. Es gibt also nur den Clientbereich.

Gruß
xaromz
I am a leaf on the wind - watch how I soar
  Mit Zitat antworten Zitat
Hawkeye219

Registriert seit: 18. Feb 2006
Ort: Stolberg
2.227 Beiträge
 
Delphi 2010 Professional
 
#5

Re: Rahmen berührt ?

  Alt 16. Nov 2006, 11:56
Wenn du lediglich das JvNavigationPanel einblenden möchtest, gibt es vielleicht eine andere Möglichkeit. Setze die Breite des Panels auf beispielsweise 3 Pixel, anstatt es vollständig unsichtbar zu machen. Im MouseOver-Event des Panels kannst du dann wieder dessen ursprüngliche Breite einstellen. Verläßt der Mauszeiger das Panel, setzt du die Breite erneut auf 3 Pixel.

Gruß Hawkeye
  Mit Zitat antworten Zitat
Antwort Antwort


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 16:06 Uhr.
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