Autor Beitrag
AceTheFace
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 39



BeitragVerfasst: Di 04.02.03 22:59 
Hallo,

würde gerne meine MDI-Childs unverschiebbar machen. Bisher mache ich das so:

ausblenden Quelltext
1:
2:
3:
4:
5:
procedure TForm1.WMWindowPosChanging(var Message: TWMWindowPosChanging);
begin
  with Message.WindowPos^ do
 flags:=Flags OR SWP_NOMOVE;
end;


Klappt auch ganz gut, allerdings habe ich eine Eigenschaft gesetzt, die dieses Child entweder schliesst oder neu erstellt und aufmacht.
Wenn ich die Form dann mit form.show; wieder anzeigen will, erscheint sie ein stück nach rechts-unten verschoben von der stelle, an der sie war bevor ich sie geschlossen habe.
WARUM? Wie kann ich das abstellen?

Und wie schaffe ich es, dass das MDI-Child immer im Hintergrund ist?

Gruß und danke,

Ace
Tino
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Veteran
Beiträge: 9839
Erhaltene Danke: 45

Windows 8.1
Delphi XE4
BeitragVerfasst: Mi 05.02.03 09:01 
Kann Dir keine Antwort geben. Aber nenne mir doch mal den Grund warum Du das Standardverhalten von MDI-Child-Fenstern verändern willst!

Gruß
TINO
smiegel
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 992
Erhaltene Danke: 1

WIN 7
D7 Prof., C#, RAD XE Prof.
BeitragVerfasst: Mi 05.02.03 09:31 
Hallo,

versuche einmal in der OnShow des entsprechenden MDI-Childs die Position mit SetWindowPos (ohne Gewähr) festzulegen.

ausblenden Quelltext
1:
  SetWindowPos(Self.Handle, HWND_NOTOPMOST, 0, 0, ClientWidth, ClientHeight, SWP_NOZORDER or SWP_NOACTIVATE);					

_________________
Gruß Smiegel
Ich weiß, daß ich nichts weiß, aber ich weiß mehr als die, die nicht wissen, daß sie nichts wissen. (Sokrates)
AceTheFace Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 39



BeitragVerfasst: Mi 05.02.03 11:19 
@Tino: Lass mich doch :D . Ich hätte das halt gerne so....

@Smiegel: Danke, funktioniert aber leider nicht...liegt wahrscheinlich, dass es MDI ist..