Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » VC++ / MFC » ado problem

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: [ 1 ] > 2 < [ 3 ]
010
18.05.2004, 12:17 Uhr
rene rosenberger



soweit ist alles klar. leider kracht es bei der funktion getkunden. also die list scheint gefüllt zu sein mit den kundennummern. diese will ich nun in ne combobox füllen.
--
gruesse rene
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
011
18.05.2004, 13:02 Uhr
~daDings
Gast


Also bei mir gehts
in OnInitdialog hab ich stehen:

C++:
    // TODO: Hier zusätzliche Initialisierung einfügen
    CKundenListe kunden("C:\\download\\db1.mdb");
    CString tx;
    this->m_MyListBoy.ResetContent();

    for (int i=0;i<kunden.GetCountListe();i++)
    {
        CKunden* kunde;
        kunde= kunden.GetKunden(i);
        tx.Format("%i %s %s",kunde->m_ID,kunde->m_Nachname,kunde->m_Vorname);
        this->m_MyListBoy.AddString(tx);
    }
    UpdateData();
    return TRUE;  // Geben Sie TRUE zurück, außer ein Steuerelement soll den Fokus erhalten



Ein Kleiner Fehler hat sich eingeschlichen bei


C++:
CKunden* CKundenListe::GetKunden(int id)
{

    return m_KundenListe.GetAt(id);
             // nicht i
}



Achja und beim zerstören von Kundenliste müssen wir auch noch die Objekte freigeben. Ungefähr so:

C++:
CKundenListe::~CKundenListe(void)
{
    for(int i=0;i<this->m_KundenListe.GetCount();i++)
    {
        CKunden* kunde=this->m_KundenListe.GetAt(i);
        delete kunde;
    }
    this->m_KundenListe.RemoveAll();
}


Ansonsten sollte es laufen
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
012
18.05.2004, 13:36 Uhr
rene rosenberger



hi,

noch ein problemchen. habe keine getcount funktion. habe stattdessen getsize genommen. funktioniert auch.

soweit klappt es juhu ! *tanzfreuspring*

werde nun mal die anderen felder füllen und melde mich dann wieder.

als nächstes käme dann : ein button zum vorwärtsnavigieren und einer für zurück. in den datensätzen meine ich.
--
gruesse rene
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
013
18.05.2004, 14:25 Uhr
~daDings
Gast


Wie du hast keine GetCount??? Ich steh ein wenig auf dem Schlauch. Und guck besser nach ob das Teil auch den ersten und letzten Satz mitliest.

Mit einem Button ist das auch ned viel schwieriger. Aber ein paar Vorbereitungen müssen wir treffen.

C++:
    CKundenListe kunden("C:\\download\\db1.mdb");


muss raus aus OnInitdialog
statt dessen schreibst du in den Header

C++:
    CKundenListe *kunden;



Und in OnInitdialog dafür

C++:
    kunden= new CKundenListe("C:\\download\\db1.mdb");



dannlegst dir noch ne Membervar an (ich nenn die mal m_zaehler)wo du dir merkst wo du grad bist und initialisierst die var mit 0. Jedesmal wenn du auf vorwärts klickst erhöst du diesen Wert um 1 (Abprüfen, das der Wert nicht höher wird als Eintrage in der Liste vorhanden sind) und jetzt:

C++:
void CTestDlg::OnBnClickedButton1()
{
    m_zaehler++;
    if (m_zaehler <kunden->GetCountListe()-1);
          m_zaehler=kunden->GetCountListe()-1;
    CKunden* kunde=this->m_KundenListe.GetAt(m_zaehler);
}


Somit hast du in kunden genau den richtigen Datensatz und kannst damit Editboxen Listfelder, Staticelemente..... befüllen
beim zurückblättern natürlich analog

Alle Klarheiten beseitigt?
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
014
18.05.2004, 14:28 Uhr
~daDings
Gast


Ähh ich habs nicht getestet, aber was ich mal beim drüberlesen sofort sehe der Strichüunkt nach der if Schleife gehört weg. Schlau war, das ich es erst nach dem abschicken gelesen hab *;-)

Achja und zerstören musst die Kundenliste auch noch beim beenden des Dialogs
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
015
19.05.2004, 08:51 Uhr
rene rosenberger



nein, ich habe kein getcount() ! zumindest nicht für die membervariable der kundenliste (CArray). soll angeblich auch keinen memberfunktion von carray sein . halte ich aber für glatt gelogen, habe schonmal damit gearbeitet. naja.
--
gruesse rene
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
016
19.05.2004, 09:04 Uhr
rene rosenberger



dat wird so bei mir nix. bekomme fehler : class type redefenition bei class ckunden und ckundenliste. habe ckundenliste kunden in die header datei der dlg klasse unter public geschrieben und die zeile in obninitdialog geändert.
--
gruesse rene
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
017
19.05.2004, 09:11 Uhr
rene rosenberger



so die redefenition war ein doppeltes include. habe ich beseitigt. jetzt steht nur in der header das include für die kundenliste.h. leider kennt jetzt "Kunde" keine funktionen mehr.


Code:
for(int i= 0; i<Kunden.GetCountListe();i++)
{

}



getcountliste must have class.....
--
gruesse rene
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
018
19.05.2004, 09:16 Uhr
rene rosenberger



wenn dummheit kracht. dann hör gut zu !

Kunde ist ja jetzt ein pointer, ich depp. hat sich erledigt.
--
gruesse rene
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
019
19.05.2004, 12:32 Uhr
rene rosenberger



so,

habe beim klicken auf den button next in kunde meine daten. musste allerdings etwas umschreiben. mit CKunde* kunde = this->... hat net gklappt. musste Kunden-> nehmen und das Carray public setzen.

wie aber trag ich jetzt zum bsp die kdnr in meine edit feld der combobox ein? also in der combobox anzeigen praktisch.
--
gruesse rene
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: [ 1 ] > 2 < [ 3 ]     [ VC++ / MFC ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: