Listenfeld



  • Hallo Leute,

    mal wieder ne Anfänger frage,

    ich habe einen gefüllten Vector, der mehrere Variablen Typen aufnimmt.
    z.b.
    int ID
    std::string Name

    Jetzt gebe ich diesen Vector in der Liste eines Dialoges aus.
    Klappt auch.

    BOOL CServerDialog::OnInitDialog() 
    {	
    	CDialog::OnInitDialog();
    	vServerliste = m_cServerliste.getServerliste();		
    	// TODO: Zusätzliche Initialisierung hier einfügen
    	CListBox* pLB = (CListBox*) GetDlgItem(IDC_LISTSERVER);
    	for(int i= 0; i != vServerliste.size(); i++)
    	{
    		pLB->AddString(vServerliste[i].getServername().c_str());
    	}	
        // Aufruf nach Initialisierung
        return CDialog::OnInitDialog();
    
    	return TRUE;  // return TRUE unless you set the focus to a control
    	              // EXCEPTION: OCX-Eigenschaftenseiten sollten FALSE zurückgeben
    }
    

    Jetzt möchte ich auf eine Zeile in dem Listenfeld doppelklicke und im Dialog wo die Liste aufgeführt wird, soll der Inhald des Vectors ausgegeben werden z.b. die ID des Namens.

    dies geschieht mit

    void CServerDialog::OnDblclkListserver() 
    {
    	// TODO: Code für die Behandlungsroutine der Steuerelement-Benachrichtigung hier einfügen
    	m_iID = vServerliste[i].getServerID();	
    AfxMessageBox("Im Listenfeld Doppeltgeklickt !");
    }
    

    Was muß ich jetzt abfangen um die ID zu erhalten und wo aktualisiere ich die Variable ID in dem Dialog ??

    Gruß und Danke
    andy_mann



  • Hallo,

    kann mir den keiner helfen ??

    Gruß
    andy_mann



  • CListBox sagt dir welcher Eintrag geklickt wurde, das
    müsste dann der gleiche sein, wie er im Vector steht.
    Schau einfach mal bei CListBox nach.

    Devil


Anmelden zum Antworten