![]() |
Delphi-Version: 10 Seattle
Wie halte ich ein Formular in einem Bereich eines anderen Formulars?
Liste der Anhänge anzeigen (Anzahl: 1)
Ich habe zwei Formulare ("Form1" und "Form2") und möchte wissen, wie das Form2 im Bereich Form1 bleibt. ohne die Grenzen von Form1 zu überschreiten, wenn es verschoben wird (auch Behandlung mit WM_WINDOWPOSCHANGING Nachricht)? Ich habe diesen Code, der verhindert, dass ein Formular außerhalb des Bildschirms bleibt. Wie verhindern Sie, dass Sie außerhalb eines anderen Formulars bleiben (Form2 bleibt außerhalb von Form1)?
Delphi-Quellcode:
type
TForm2 = class(TForm) Button1: TButton; private procedure WMMove(var Msg: TWMMove); message WM_MOVE; public { Public declarations } end; var Form2: TForm2; implementation {$R *.dfm} { TForm2 } procedure TForm2.WMMove(var Msg: TWMMove); begin if (Left < 0) then Left := 0; if (Top < 0) then Top := 0; if (Screen.Width - (Left + Width) < 0) then Left := Screen.Width - Width; if (Screen.Height - (Top + Height) < 0) then Top := Screen.Height - Height; end; end. |
AW: Wie halte ich ein Formular in einem Bereich eines anderen Formulars?
Muss das Fenster verschiebbar sein oder reicht es nicht aus, wenn Du das Fenster z.B. in einem Panel darstellst (Parent zuweisen)?
|
AW: Wie halte ich ein Formular in einem Bereich eines anderen Formulars?
Zitat:
Muss das Fenster verschiebbar sein. |
AW: Wie halte ich ein Formular in einem Bereich eines anderen Formulars?
Zitat:
|
AW: Wie halte ich ein Formular in einem Bereich eines anderen Formulars?
Kann es sein, dass du einfach nur ein MDI-Formular + MDI Child brauchst/willst?
|
AW: Wie halte ich ein Formular in einem Bereich eines anderen Formulars?
Zitat:
Lesen Sie mehr unter: ![]() |
AW: Wie halte ich ein Formular in einem Bereich eines anderen Formulars?
Zitat:
|
AW: Wie halte ich ein Formular in einem Bereich eines anderen Formulars?
Zitat:
|
AW: Wie halte ich ein Formular in einem Bereich eines anderen Formulars?
Zitat:
Ich habe diesen Code unten, um besser zu verstehen, was ich wünsche (stattdessen mit der Maus; mit Form2).
Delphi-Quellcode:
var
R: TRect; begin R := GetClientRect; R.TopLeft := ClientToScreen(R.TopLeft); R.BottomRight := ClientToScreen(R.BottomRight); ClipCursor(@R); ShowMessage('Versuchen Sie, die Maus außerhalb des Formular zu bewegen.'); ClipCursor(nil); end; |
AW: Wie halte ich ein Formular in einem Bereich eines anderen Formulars?
Ich wollte dich auf das Prinzip aufmerksam machen. Du nimmst als Grenze eben nicht die Screen, sondern das Formular1. Und dahingehend musst du den Code anpassen.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:44 Uhr. |
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