AGB  ·  Datenschutz  ·  Impressum  







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

Event Fenster verschieben?

Ein Thema von Minz · begonnen am 26. Mär 2003 · letzter Beitrag vom 29. Jul 2009
Antwort Antwort
Seite 1 von 2  1 2      
Minz

Registriert seit: 19. Dez 2002
476 Beiträge
 
#1

Event Fenster verschieben?

  Alt 26. Mär 2003, 15:45
Hallo,

welches Event könnte ich benutzen, wenn ein Fenster verschoben wird.

TForm biete irgendwie kein onMove oder so.

Danke Minz
  Mit Zitat antworten Zitat
Benutzerbild von sakura
sakura

Registriert seit: 10. Jun 2002
Ort: München
11.412 Beiträge
 
Delphi 11 Alexandria
 
#2
  Alt 26. Mär 2003, 15:59
Ähnlich der Lösung in folgenden Beitrag, allerdings musst Du auf SC_MOVE anstatt von SC_MINIMIZE, SC_CLOSE reagieren.

http://www.delphipraxis.net/internal...t=wmsyscommand

......
Daniel W.
Ich bin nicht zurück, ich tue nur so
  Mit Zitat antworten Zitat
Minz

Registriert seit: 19. Dez 2002
476 Beiträge
 
#3
  Alt 26. Mär 2003, 16:04
daaanke
  Mit Zitat antworten Zitat
Minz

Registriert seit: 19. Dez 2002
476 Beiträge
 
#4
  Alt 26. Mär 2003, 16:22
das funzt net

Delphi-Quellcode:
procedure TForm1.WMSYSCOMMAND(var Msg: TMessage);
begin
  { WM_SYSCOMMAND abfangen }
  if Msg.Msg = WM_SYSCOMMAND then
  begin
    { wParam prüfen }
    case Msg.wParam of
      SC_MOVE:
      begin
        ShowMessage('Fenster wurde beweg');
        FensterPosX:=Form1.Left;
        FensterPosY:=Form1.Top;
        Inherited;
      end;
    else
      { alle anderen Fälle weiterreichen an die standard Fensterprozedur }
      Inherited;
    end;
  end;
end;
Hab fast alles übernommen, er zeigt weder die Message, noch belegt er die Variablen.

Minz
  Mit Zitat antworten Zitat
Benutzerbild von sakura
sakura

Registriert seit: 10. Jun 2002
Ort: München
11.412 Beiträge
 
Delphi 11 Alexandria
 
#5
  Alt 26. Mär 2003, 17:04
Wäre auch zu schön gewesen. Aber ich habe eine Lösung gefunden und(!) getestet.

Delphi-Quellcode:
  private
    { Private declarations }
    procedure WMMOVE(var Msg: TWMMove); message WM_MOVE;
  .....



procedure TForm1.WMMOVE(var Msg: TWMMove);
begin
  inherited;
  ShowMessage('g');
end;
......
Daniel W.
Ich bin nicht zurück, ich tue nur so
  Mit Zitat antworten Zitat
Minz

Registriert seit: 19. Dez 2002
476 Beiträge
 
#6
  Alt 26. Mär 2003, 17:08
super danke habs auch getestet
und funzt...

wusste nicht, dass das Fenster am Anfang schon
gleich 3 mal bewegt wird

Minz
  Mit Zitat antworten Zitat
SebE

Registriert seit: 31. Jul 2004
Ort: Chemnitz
316 Beiträge
 
Delphi 7 Personal
 
#7

Re: Event Fenster verschieben?

  Alt 27. Nov 2004, 12:00
Hi, es funktioniert wirklich gut.
Gibt es auch ein Event das vor dem Verschieben gestartet wird?
Ich wollte, dass meine Form beim verschieben, wie bei WinAmp, an den Bildschirmrand gezogen wird.
Das geht auch, aber man sieht das die Form erst verschoben wird und danach erst meine Prozedure aufgerufen wird.
Sebastian
  Mit Zitat antworten Zitat
Muetze1
(Gast)

n/a Beiträge
 
#8

Re: Event Fenster verschieben?

  Alt 27. Nov 2004, 12:03
Moin!

Dann nimm die Botschaft WM_MOVING und darin kannst du das Rechteck deines Fenster auch anpassen und somit das schieben beschränken und auch diesen "Docking" Effekt einbauen.

MfG
Muetze1
  Mit Zitat antworten Zitat
Benutzerbild von mirage228
mirage228

Registriert seit: 23. Mär 2003
Ort: Münster
3.750 Beiträge
 
Delphi 2010 Professional
 
#9

Re: Event Fenster verschieben?

  Alt 27. Nov 2004, 12:07
Zitat von SebE:
Hi, es funktioniert wirklich gut.
Gibt es auch ein Event das vor dem Verschieben gestartet wird?
Ich wollte, dass meine Form beim verschieben, wie bei WinAmp, an den Bildschirmrand gezogen wird.
Das geht auch, aber man sieht das die Form erst verschoben wird und danach erst meine Prozedure aufgerufen wird.
Hi,

dafür gibt es ab Delphi 7 die Eigenschaft ScreenSnap von Deiner Form

mfG
mirage228
David F.

May the source be with you, stranger.
PHP Inspection Unit (Delphi-Unit zum Analysieren von PHP Code)
  Mit Zitat antworten Zitat
SebE

Registriert seit: 31. Jul 2004
Ort: Chemnitz
316 Beiträge
 
Delphi 7 Personal
 
#10

Re: Event Fenster verschieben?

  Alt 27. Nov 2004, 17:39
Echt geil, danke
Sebastian
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 05:05 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