AGB  ·  Datenschutz  ·  Impressum  







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

Form-Position einschränken/beschränken

Ein Thema von Legnad · begonnen am 21. Jun 2007 · letzter Beitrag vom 23. Jun 2007
Antwort Antwort
Legnad

Registriert seit: 23. Jan 2007
16 Beiträge
 
Delphi XE5 Professional
 
#1

Form-Position einschränken/beschränken

  Alt 21. Jun 2007, 20:33
Hallo mal wieder!

Heute hab ich folgendes Rätsel mitgebracht! Ach was.

Folgendes:

Wie kann ich die property 'TForm.top' auf 'TForm.top > 75' beschränken? Ich dachte an eine if-anweisung, die das überprüft und bei unterschreitung von 75 auf 75 zurücksetzt. Halt so, dass man die Form nur in einem bestimmen Bereich bewegen kann. Ich frage mich halt bloß, wo ich diese hinschreiben soll. Ich habs mit nem timer versucht (Interval := 1 ), aber der Erfolg war eher mäßig.

Danke für eure Ideen!
  Mit Zitat antworten Zitat
Benutzerbild von dajuhsa
dajuhsa

Registriert seit: 20. Apr 2007
397 Beiträge
 
Turbo Delphi für Win32
 
#2

Re: Form-Position einschränken/beschränken

  Alt 21. Jun 2007, 20:44
vielleicht geht ja OnResize? glaub aber eher nicht..,sorry
das Essen ist wie das Internet - Downstream ist immer angenehmer als Upstream
-
Warum missbraucht die ganze Programmierwelt Images als Paintboxen
  Mit Zitat antworten Zitat
Hawkeye219

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

Re: Form-Position einschränken/beschränken

  Alt 21. Jun 2007, 20:51
Hallo Christian,

du kannst die Nachricht WM_WindowPosChanging abfangen:

Delphi-Quellcode:
type
  TForm1 = class (TForm)
    [...]
  private
    procedure WMWindowPosChanging (var aMessage: TWMWindowPosChanging);
      message WM_WINDOWPOSCHANGING;
  end;

procedure TForm1.WMWindowPosChanging (var aMessage: TWMWindowPosChanging);
begin
  inherited;
  with aMessage.WindowPos^ do
    if (y < 75) then
      y := 75;
end;
Gruß Hawkeye
  Mit Zitat antworten Zitat
Legnad

Registriert seit: 23. Jan 2007
16 Beiträge
 
Delphi XE5 Professional
 
#4

Re: Form-Position einschränken/beschränken

  Alt 21. Jun 2007, 21:07
Ne, OnResize geht nicht, hab ich bereits probiert. Deine Idee, Hawkeye, werd ich morgen probieren! Dankechön!
  Mit Zitat antworten Zitat
Benutzerbild von dajuhsa
dajuhsa

Registriert seit: 20. Apr 2007
397 Beiträge
 
Turbo Delphi für Win32
 
#5

Re: Form-Position einschränken/beschränken

  Alt 22. Jun 2007, 22:31
irgendwie kommts ja n bisschen spät, sorry aba theoretisch würde OnMouseUp doch gehen, oder nich?
das Essen ist wie das Internet - Downstream ist immer angenehmer als Upstream
-
Warum missbraucht die ganze Programmierwelt Images als Paintboxen
  Mit Zitat antworten Zitat
Namenloser

Registriert seit: 7. Jun 2006
Ort: Karlsruhe
3.724 Beiträge
 
FreePascal / Lazarus
 
#6

Re: Form-Position einschränken/beschränken

  Alt 22. Jun 2007, 22:42
Nein, OnMouseUp wird nur im Clientbereich des fensters ausgelöst.
OnResize müsste aber gehen, da gibt es glaub ich einen Parameter namens canresize, den man dann verändern kann. Ansonsten gibt es bei neueren Delphiversionen die Eigenschaft Constrains, bei der man minimale bzw maximale Höhe und Breite angeben kann.
  Mit Zitat antworten Zitat
Muetze1
(Gast)

n/a Beiträge
 
#7

Re: Form-Position einschränken/beschränken

  Alt 23. Jun 2007, 01:05
Constraints hilft aber nicht bei einer Einschränkung des Top Wertes, wie du schon geschrieben hast.
  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 22:37 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