Autor Beitrag
Killi
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 299

Win*
D6 Prof
BeitragVerfasst: Di 11.11.03 14:58 
Hi!

Wie kann ich es verhindern dass man mein Form (borderStyle: dialog), das über ein ShowModal aufgerufen wurde VERSCHIEBEN kann? Ohne dass ich die Leiste oben, also borderStyle = none wegnehmen muss???
Geht das irgendwie?

_________________
----
Life is hard and then you die
Terra23
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 872

Win 8
Delphi 7
BeitragVerfasst: Di 11.11.03 15:02 
Ja, das geht. Willst du wissen wie? Na gut.. ;-) Du nimmst einen Timer und schreibst:

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
Timer1Timer
begin
If Form1.Top<>(Screen.Height DIV 2)-(Form1.Height DIV 2)
Then Form1.Top:=(Screen.Height DIV 2)-(Form1.Height DIV2);

If Form1.Left<>(Screen.Width DIV 2)-(Form1.Widht DIV 2)
Then Form1.Left:=(Screen.Width DIV 2)-(Form1.Width DIV 2);
end;


Meine Angaben sorgen dafür, daß die Form in der Bildschirmmitte zentriert wird (nach verschieben). Du kannst auch einfach einen Integerwert angeben. Den Timer setzt du dann auf sehr niedrig und dann geht's.. :-)

_________________
Hasta La Victoria Siempre
Currywurst
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 50

Win XP Pro
D3 Pro, D5 Std, D6 Pers
BeitragVerfasst: Di 11.11.03 15:14 
na das mit dem timer is ja net so elegent, versuch ma so:

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
procedure TForm2.FormCreate(Sender: TObject);
var
  hm: HMENU;
begin
  hm := GetSystemMenu(Handle, False);
  if (hm <> 0) then DeleteMenu(hm, SC_MOVE, MF_BYCOMMAND);
end;
Terra23
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 872

Win 8
Delphi 7
BeitragVerfasst: Di 11.11.03 15:46 
... von Eleganz hat auch nie jemand gesprochen. :P Er wollte eine Lösung, ich habe ihm eine gegeben (ob elegant oder nicht sei dahingestellt ;-) ). Viele Wege führ'n nach Rom.. *sing*

_________________
Hasta La Victoria Siempre
maximus
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 896

Win XP, Suse 8.1
Delphi 4/7/8 alles prof
BeitragVerfasst: Di 11.11.03 15:55 
"Viele wege führen nach Rom" da haste recht...aber auch nicht alle und ausgerechnet deiner führt in die Hölle :twisted: :evil: :twisted: Muuhaahahaaa..

_________________
mfg.
mâximôv
obbschtkuche
Gast
Erhaltene Danke: 1



BeitragVerfasst: Di 11.11.03 16:12 
Am Besten ist wahrscheinlich eine Kombination, weil das Formular so immer noch mit

ausblenden Delphi-Quelltext
1:
 SetWindowPos()					


verschoben werden kann... aber man kanns auch übertreiben ;)
Terra23
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 872

Win 8
Delphi 7
BeitragVerfasst: Mi 12.11.03 18:38 
@Maximus: Inwiefern Hölle? Das kapier' ich nicht. Wolltest du jetzt einfach mit einem dummen Spruch deinen Zähler in die Höhe treiben oder wie? :evil:
Ich hab' das bei mir im Programm auch mal gemacht und das funktioniert. Was hat das mit Hölle zu tun?

_________________
Hasta La Victoria Siempre
obbschtkuche
Gast
Erhaltene Danke: 1



BeitragVerfasst: Mi 12.11.03 20:58 
Dann probier das mal mit WinXP aus... Das ist dann die Hölle (Das Fenster flackert extrem in der Gegend rum), jedenfalls wenn man das Direktverschieben, oder wie das heißt, aktiviert hat.
Terra23
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 872

Win 8
Delphi 7
BeitragVerfasst: Mi 12.11.03 22:05 
Gut; das kann man mir dann ja sagen, oder? Tut mir leid, wenn ich so "wütend" reagiert habe, aber heute erwischt man mich mit sowas auf dem ganz falschen Fuß. :P

_________________
Hasta La Victoria Siempre
Burgpflanze
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 67

Windows2000 Prof. SP4
Delphi7 Enterprise
BeitragVerfasst: Do 13.11.03 02:32 
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
interface
  
uses
  ...

type
  TForm1 = class(TForm)
  ...
  private
    procedure WMMoving(var Msg: TWMMoving); message WM_MOVING;
  end;

...

implementation

procedure TForm1.WMMoving(var Msg: TWmMoving);
begin
  Msg.DragRect^ := BoundsRect;
end;

Gruss, Burgpflanze

Moderiert von user profile iconTino: Code- durch Delphi-Tags ersetzt.
maximus
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 896

Win XP, Suse 8.1
Delphi 4/7/8 alles prof
BeitragVerfasst: Do 13.11.03 10:24 
Terra23 hat folgendes geschrieben:
@Maximus: Inwiefern Hölle? Das kapier' ich nicht. Wolltest du jetzt einfach mit einem dummen Spruch deinen Zähler in die Höhe treiben oder wie? :evil:
Ich hab' das bei mir im Programm auch mal gemacht und das funktioniert. Was hat das mit Hölle zu tun?


Beruhig dich mal. Das war leicht ironisch gemeint :wink: ...aber ein fünkchen wahrheit ist drann. Für schlechten programmierstil kommt man in die programmierer HÖLLE :mrgreen: ...ich nehm mich da nicht aus! Zum glück hab ich die höllenhunde (im wesentlichen der inner schweinehund) überwunden und bin jetzt im programmierer himmel :D


Mit freundlichen grüssen. maximov.

_________________
mfg.
mâximôv
Terra23
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 872

Win 8
Delphi 7
BeitragVerfasst: Do 13.11.03 13:53 
... sorry. Ich hatte ja schon geschrieben, daß ich mich gestern sehr leicht angegriffen gefühlt habe. Irgendwie habe ich so viel Streß und Zeug im Kopf, daß man mich schon mit den einfachsten Dingen reizen konnte. Tut mir leid. Ich will nicht in die Hölle :bawling: , schließlich bin ich doch ein :angel:

_________________
Hasta La Victoria Siempre