AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

TOpenDialog positionieren

Ein Thema von Bunnepeller · begonnen am 12. Okt 2005 · letzter Beitrag vom 14. Okt 2005
Antwort Antwort
Bunnepeller

Registriert seit: 12. Mär 2005
11 Beiträge
 
Delphi 2005 Architect
 
#1

TOpenDialog positionieren

  Alt 12. Okt 2005, 20:03
Ich möchte die Position eines TOpenDialog´s verändern.
SetWindowPos(GetParent(OpenDialog2.Handle), HWND_TOPMOST,newxpos,newypos,0,0,SWP_NOSIZE); habe ich schon versucht, aber das Fenster wird mir immer zentriert positioniert.
Alle anderen Sachen, wie HWND_TOPMOST, oder Größe ändern usw. funktionieren.
Kann mir jemand sagen, was ich falsch mache? :?:
  Mit Zitat antworten Zitat
Benutzerbild von jim_raynor
jim_raynor

Registriert seit: 17. Okt 2004
Ort: Berlin
1.251 Beiträge
 
Delphi 5 Standard
 
#2

Re: TOpenDialog positionieren

  Alt 12. Okt 2005, 23:21
1. Warum eigentlich GetParent? Müsste nicht OpenDialog2.Handle reichen?
2. Wann rufst du diese Funktion auf? Ich vermute mal, dass durch das Execute die Position gesetzt wird. Schonmal versucht in OnShow die Funktion aufzurufen?
Christian Reich
Schaut euch mein X-COM Remake X-Force: Fight For Destiny ( http://www.xforce-online.de ) an.
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie
(Moderator)

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#3

Re: TOpenDialog positionieren

  Alt 12. Okt 2005, 23:58
Nein, der OpenDialog er VCL hat nochj ein unsichtbares Fenster irgendwie.

Zum Problem:
Delphi-Quellcode:

procedure TForm1.MyOpenDialogOnShow(Sender: TObject);
begin
  MoveWindow(GetParent(OpenDialog1.Handle), 0, 0, 250, 150, False);
  SetWindowText(GetParent(OpenDialog1.Handle), 'Test');
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  OpenDialog1.OnShow := MyOpenDialogOnShow;
  if OpenDialog1.Execute then
  begin

  end;
end;
Das verrückte ist, die Größe kann ich verändern, aber die Position nicht.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von Sprint
Sprint

Registriert seit: 18. Aug 2004
Ort: Edewecht
712 Beiträge
 
Delphi 5 Professional
 
#4

Re: TOpenDialog positionieren

  Alt 13. Okt 2005, 05:49
Zitat von Luckie:
Das verrückte ist, die Größe kann ich verändern, aber die Position nicht.
Wenn ich mich recht erinnere, wird nach dem Ereignis OnShow die interne Funkiton CenterWindow aus der Unit Dialogs aufgerufen.
Ciao, Sprint.

"I don't know what I am doing, but I am sure I am having fun!"
  Mit Zitat antworten Zitat
Bunnepeller

Registriert seit: 12. Mär 2005
11 Beiträge
 
Delphi 2005 Architect
 
#5

Re: TOpenDialog positionieren

  Alt 13. Okt 2005, 18:52
Ich habe weiter probiert. MoveWindow war auch nicht von Erfolg gekrönt.
Wenn ich den OpenDialog Dialog öffne, diesen anschließend verschiebe,
Fenster schließe und wieder öffne, kommt der Dialog genau an der Stelle,
an der er zuletzt geschlossen wurde.
Durch die Procedure OpenDialogXOnShow komme ich nach wie vor. ??
ich versuch´s mal weiter.
  Mit Zitat antworten Zitat
Benutzerbild von Sprint
Sprint

Registriert seit: 18. Aug 2004
Ort: Edewecht
712 Beiträge
 
Delphi 5 Professional
 
#6

Re: TOpenDialog positionieren

  Alt 14. Okt 2005, 05:49
Delphi-Quellcode:
procedure TForm1.OpenDialog1Show(Sender: TObject);
begin

  SetWindowPos(GetParent(OpenDialog1.Handle), 0, 10, 10, 0, 0, SWP_NOSIZE);
  Abort;

end;
Ciao, Sprint.

"I don't know what I am doing, but I am sure I am having fun!"
  Mit Zitat antworten Zitat
Bunnepeller

Registriert seit: 12. Mär 2005
11 Beiträge
 
Delphi 2005 Architect
 
#7

Re: TOpenDialog positionieren

  Alt 14. Okt 2005, 19:45
Ja, funktioniert prima.
Vielen Dank!
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 03:15 Uhr.
Powered by vBulletin® Copyright ©2000 - 2022, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2021 by Daniel R. Wolf