DynTabCtrl und focus bei untergeordnete Fenster



  • Hallo alle zusammen,
    ich benutze ein fenster mit mehrere reiter und möchte beim starten den Focus ein EditFeld einer der untergeordnete Fenster geben... Wie soll ich das tun?

    ich habe folgendes versuch, funktioniert aber nciht...

    BOOL ParentFenster::OnInitDialog()
    {
    	CDialog::OnInitDialog();
            //m_BE_TAB gehört der Klasse DynTabCtrl
    	//BS_ID_Dlg, BS_EG_Dlg und BS_ME_Dlg werden zuvor initialisiert
            m_BE_TAB.InsertItem(BS_ID_Dlg,"Kopfdaten", IDD_BS_Interne_Daten);
    	m_BE_TAB.InsertItem(BS_EG_Dlg,"Artikeldaten", IDD_BS_Eigenschaften);
    	m_BE_TAB.InsertItem(BS_ME_Dlg,"Memo", IDD_BS_Memo);
            // Bis hier funktioniert alles...
    	BS_ID_Dlg->GetDlgItem(IDC_BS_ID_Nummer)->SetFocus(); // hier wird kein Fehler angezeigt, der Focus ist aber nicht beim IDC_BS_ID_Nummer
    
    	return TRUE;        
    }
    


  • Könnte evtl. daran liegen:
    OnInitDialog:

    return TRUE;  // return TRUE  unless you set the focus to a control
    

    Ansonsten vielleicht die Tab-Order ändern...



  • Danke, das lag an return TRUE...



  • sorry, noch eine Frage,
    wie schaffe ich das am einfachsten dass wenn das letzte Feld vom Child den Focus hat, der Focus dann beim nächsten TAB drucken auf ein Feld vom Parent "sringt"?


Anmelden zum Antworten