Eingabefeld auf String speichern (MFC-Anwendung)



  • Wie kann man bei einer MFC-Anwendung den Inhalt eines Eingabefeldes auf eine Variable vom Typ

    char name[100];
    

    speichern? 🙄



  • wieso willst du das denn unbedingt mit char machen !? CString ist doch viel einfacher.

    aber ok, ich würde es so machen:

    CString cInput;     // der inhalt der im control steht
    
    UpdateData(TRUE);        // den wert vom control holen
    
    for (int i = 0; i < 100; i ++)
      if (i < cInput.GetLength())
        name[i] = cInput[i];
    
    name[i] = NULL
    


  • @Red Skall

    hast was vergessen. Solltest ihm auch sagen das dein cInput eine Membervariable von Typ CString ist. 😃

    Aber warum du nun einen char in einen anderen kopierst verstehe ich jetzt nicht. 😃

    Dann sollten wir ihm vielleicht noch kurz erklären, dass man mit STRG + Doppelklick auf das Ctrl (Oder rechte Maustaste auf das Ctrl und dann "Add Variable") eine Membervar eines Ctrl erstellt.

    Wenn du dir nun aber noch den Typ CEdit (Normalerweise Typ von deinem Eingabefeld) hat er z.B. GetWindowText(). Damit kannst du dir den Inhalt des Editfeldes auch direkt in einen String schreiben.

    Oder möchtest du einfach nur einen CStringwert in einen Char kopieren? Dann benutze z.B. strcpy()

    Bsp.:

    CString strKatzenKlo;
    char cKatzenKlo[100];
    memset(cKatzenKlo, NULL, sizeof(cKatzenKlo));
    
    strKatzenKlo = "Rubbel die Katz!!!";
    
    strcpy(cKatzenKlo, strKatzenKlo);
    

    Jetzt steht in cKatzenKlo auch "Rubbel die Katz!!!"

    Viel Spaß
    *winke*
    Hellsgore



  • @chulle07:

    Hellsgore schrieb:

    Solltest ihm auch sagen das dein cInput eine Membervariable von Typ CString ist. 😃

    habe ihm doch gesagt das es ein CString-control ist:

    Red Skall schrieb:

    CString cInput; // der inhalt der im control steht

    oder nicht !? 😉

    Hellsgore schrieb:

    Aber warum du nun einen char in einen anderen kopierst verstehe ich jetzt nicht. 😃

    das mache ich weil er das wollte :D:D

    ach ja, an strcpy hatte ich nicht mehr gedacht 🙄 ich dummerchen. das ist natürlich die bessere methode !!


Anmelden zum Antworten