Wizard - Übergabe auf andere (Wizard / Dialog) - Seiten



  • Was für die FAQ.

    Sicherlich hatten oder haben immer noch viele das Problem, sie wissen nicht wie man Daten die vom User zb auf der ersten Wizardseite in einem Editfeld eingegeben wurden auf der 2ten Wizardpage weiterverwenden kann.

    Anlegen von CString Variablen in CWizardSheet

    Als erstes muss man die "gleichen" Strings, welche man für ein Editfeld (m_strEdit1) in CWizardPage1 hat auch in der Sheetklasse (hier CWizardSheet) anlegen. In CWizardSheet fügt man nun unter Public ein neuer CString-Eintrag ein, aber GLEICHER STRINGNAME wie bei WizardPage1 also auch m_strEdit1.

    public:
         CString m_strEdit1;
    

    Diese Variable m_strEdit1 ist auch in CWizardPage1 vorhanden, da wir dort reinschreiben. Nicht vergessen in WizardSheet nun auch WizardPage1.h einzubinden!

    Speichern von Werten aus WizardPage1 in die Sheetklasse CWizardSheet

    UpdateData(TRUE);
    ((CWizardSheet*)GetParent())->m_strEdit1 = m_strEdit1;
    UpdateData(FALSE);
    

    Nicht vergessen, hier die WizardSheet.h noch einzubinden!

    Aufrufen und weiterverwenden in WizardPage2

    UpdateData(TRUE);
    CString str1;
    str1 = ((CWizardSheet*)GetParent())->m_strEdit1;
    
    //Hier mach was Du willst. Das in Page1 eingegebene m_strEdit ist hier auf 
    //der zweiten Seite als "str1" weiterverwendbar!!
    
    UpdateData(FALSE);
    

    Ich glaube, das kommentiert sich eigentlich alles von selbst.

    Auch hier nicht vergessen, hier die WizardSheet.h noch einzubinden!

    mfg
    Pro


Anmelden zum Antworten