Dialogfenster zentriert aufrufen



  • Hallo
    Ich möchte ein Dialogfenster, was beim klicken von einem Button geöffnet wird, in der Anwendung zentriert und nicht oben links angezeigt wird.

    Weiß jemand, wie ich das mache?

    Ich habe Visual Studio 6.0

    mfg



  • aloso ich machs so

    int iOffsetTop     = GetSystemMetrics(SM_CYCAPTION)+2;
      int iMainDlgWidth  = 800;
    	int iMainDlgHeight = 600 + iOffsetTop;
    
    	// ***************************************************
    	// Main Dialog genau in der Mitte des Bildschirms positionieren
    	// und mit der vorgegebenen Groesse versehen
    	// ***************************************************
    	WINDOWPLACEMENT wndpl;
      GetWindowPlacement( &wndpl );
    
    	CRect rcWnd (0,
    	             0,
    							iMainDlgWidth ,
    							iMainDlgHeight);
    
    	long dOffsetX = (GetSystemMetrics(SM_CXSCREEN) - iMainDlgWidth )/2;
    	long dOffsetY = (GetSystemMetrics(SM_CYSCREEN) - iMainDlgHeight)/2;
    
    	if(dOffsetX < 0) dOffsetX=0;
    	if(dOffsetY < 0) dOffsetY=0;
    
    	rcWnd.OffsetRect(dOffsetX,-iOffsetTop+dOffsetY);
    	wndpl.rcNormalPosition = rcWnd;
    
    	SetWindowPlacement( &wndpl );
    

    Gruß orroz



  • ach du gott *ggg*

    also ich lasse den Dialog so aufrufen:

    Aufruf = new Klasse;
    Aufruf->Create(IDD_Message,NULL);
    Aufruf->ShowWindow(SW_SHOWNORMAL);
    

    Hab gedacht, dass es da irgendwie einen übergabeparameter oder so gibt *gg*



  • Ach du scheiße
    Blöd muß man sein
    Habs schon
    Kann ich ganz einfach in den Eigenschaften einstellen ich Idiot
    Ich sollte besser wieder ins Bett gehen
    tztztztz

    Sorry


Anmelden zum Antworten