CTabCtl



  • Hi
    weis jemand wie ich bei CTabCtl ein Registerblatt mit dem Inhalt eines Dialoges hinzufüge???



  • den Dialog musst du als Child-Fenster des Tab Controls erstellen und dann nur noch richtig positionieren.



  • ja und wie mach ich einen dialog als childwindow des tabs
    positionieren tu ich ja mit .setwindowpos oder??



  • m_pPage1 = new CHtmlConfigPage1Dlg;  //Objekt von dem Dialog anlegen
    m_pPage1->Create(MAKEINTRESOURCE(IDD_HTMLCONFIGPAGE1),&m_ctlTab);  //m_ctlTab ist das CTabCtrl 
    m_pPage1->ShowWindow(SW_SHOW);  //anzeigen
    


  • Shlo schrieb:

    den Dialog musst du als Child-Fenster des Tab Controls erstellen und dann nur noch richtig positionieren.

    Das sollte er auf gar keinen Fall so machen, da sich WS_EX_CONTROLPARENT und WS_TABSTOP beissen. Das müssen siblings sein, IMO!



  • WS_EX_CONTROLPARENT benutze ich eh nicht, alle Dialoge werden in der eigenen Prozedur gesteuert.



  • Shlo schrieb:

    WS_EX_CONTROLPARENT benutze ich eh nicht, alle Dialoge werden in der eigenen Prozedur gesteuert.

    Was hat WS_EX_CONTROLPARENT mit den Dialog-Prozeduren zu tun?

    Versuch: Wenn Du mit der Tab-Taste durch den Dialog hüpfst, wirst Du da nicht mehr rauskommen. Du wirst das TabCtrl beim Tabben nicht berücksichtigen. Andere Controls ausserhalb des TabCtrls werden ebenfalls nicht berücksichtigt.

    Anders sieht es aus, wenn der Focus ausserhalb des Dialogs ist. Wenn Du jetzt anfängst zu Tabben, werden alle Controls ausserhalb des Dialogs angesprungen, in den Dialog selbst kommst du gar nicht. Und jetzt vergleiche das mal mit dem PropertySheet.

    Oder geht das mit der Tatatursteuerung tatsächlich einfach so mit den MFC?


Anmelden zum Antworten