Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Winampmässiges "EasyDrop" (https://www.delphipraxis.net/50269-winampmaessiges-easydrop.html)

MiniKeks 22. Jul 2005 18:56


Winampmässiges "EasyDrop"
 
Zum Umherschieben der form. Wie geht das?

Edit: Ich meine Es wie Bei Winamp, d.H. man kann überall Hinklicken, und nicht nur in die Tielleiste, um das Fenster auf dem Dektop Herumzuschieben. Ist schwer zu beschreiben, aber vieleicht Wisst ihr es jetzt.

BlackJack 22. Jul 2005 18:59

Re: Winampmässiges "EasyDrop"
 
Zitat:

Zitat von MiniKeks
Wie geht das?

1. schritt: fragen gescheit ausformulieren.
2. TForm.ScreenSnap könnte dir helfen, allerdings muss ich hier wie zu erwarten ziemlich ins blaue raten was für "Winampmässiges" verhalten du denn meinst.

dahead 22. Jul 2005 19:01

Re: Winampmässiges "EasyDrop"
 
ist von '99, damals hab ich das so gemacht (der hinweis deshalb, da man das sicherlich optimieren kann, bzw. fehler drin sind/sein könnten):


Code:
procedure TForm1.Panel1MouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
begin
 if ssleft in shift then
  begin
    ReleaseCapture;
    Form1.perform(WM_syscommand, $F012, 0);

    (Edit: das hier kannst du weglassen, nimm stattdessen wie blackjack sagt screensnap).
    if Form1.Left < 30 then Form1.Left := 0;
    if Form1.Top < 30 then Form1.Top := 0;
    if Form1.Left > Screen.Width - Form1.Width - 60 then Form1.Left := Screen.Width - Form1.Width;
    if Form1.Top > Screen.Height - Form1.Height - 60 then Form1.Top := Screen.Height - Form1.Height - 28;
    // - 25 wegen Taskleiste
  end;
end;

Ultimator 22. Jul 2005 19:01

Re: Winampmässiges "EasyDrop"
 
Meinst du das andocken der Forms aneinander und/oder am Bildschirmrand?

Und ich dachte, wir hätten es mit dem "neuen" MiniKeks zu tun :(

//edit
Zitat:

Zitat von MiniKeks
@Ultimator: Sorry aber ich habe eine neue Tastatur und ziemliche Handschmerzen (Gelenkeoperation vor 3 Monaten), und ich mag nicht so viel schreiben. Weh tut es nicht, aber es ist mir unangenehm. Danke fürs Verständniss! :wink:

Na, dann lassen wir das gerade nochmal durchgehen ;) :mrgreen:

@dahead: Ich hab doch nur seine Frage "präzisiert", aber Antwort hab ich keine gegeben ;)

jfheins 22. Jul 2005 19:18

Re: Winampmässiges "EasyDrop"
 
Aufgrund der Unklaren Frage werfe ich einfach mal TJvFormMagnet in die Runde, vielleicht macht es ja das, was (der neue :? ) Minikeks will - auch wenn ich sie noch nie benutzt habe, aber ein passender Name ist halt schonndie halbe Miete ;)

MrKnogge 22. Jul 2005 19:23

Re: Winampmässiges "EasyDrop"
 
Zitat:

Zitat von MiniKeks
Zum Umherschieben der form. Wie geht das?

Ich schätz mal du meinst das:

Delphi-Quellcode:
procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
begin
  if ssLeft in Shift then begin
    ReleaseCapture;
    SendMessage(Form1.Handle, WM_SYSCOMMAND, SC_MOVE+1,0);
  end;
end;
gruss

dahead 22. Jul 2005 19:28

Re: Winampmässiges "EasyDrop"
 
wie oft wird hier eigentlich das selbe gepostet?

ist es so wichtig master member zu sein?

MiniKeks 22. Jul 2005 19:40

Re: Winampmässiges "EasyDrop"
 
Ich meine Es wie Bei Winamp, d.H. man kann überall Hinklicken, und nicht nur in die Tielleiste, um das Fenster auf dem Dektop Herumzuschieben. Ist schwer zu beschreiben, aber vieleicht Wisst ihr es jetzt.

mfg,
MiniKeks

@Ultimator: Sorry aber ich habe eine neue Tastatur und ziemliche Handschmerzen (Gelenkeoperation vor 3 Monaten), und ich mag nicht so viel schreiben. Weh tut es nicht, aber es ist mir unangenehm. Danke fürs Verständniss! :wink:

dahead 22. Jul 2005 19:44

Re: Winampmässiges "EasyDrop"
 
@MiniKeks:

Ultimator hat deine Lösung bereits gepostet (ja, das suchst du!)

MrKnogge 22. Jul 2005 20:08

Re: Winampmässiges "EasyDrop"
 
Zitat:

Zitat von MiniKeks
Ich meine Es wie Bei Winamp, d.H. man kann überall Hinklicken, und nicht nur in die Tielleiste, um das Fenster auf dem Dektop Herumzuschieben. Ist schwer zu beschreiben, aber vieleicht Wisst ihr es jetzt.

Siehe mein obiger post :roll:


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:22 Uhr.
Seite 1 von 2  1 2      

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