SDI-Projekt mit variablen Buttons



  • Hallo,

    ich soll mit MFC und Visual_Studio_2005 ein SDI-Projekt mit variablen Buttons erstellen, aber irgendwie hänge ich gerade hier fest....
    Ich habe zuerst die Buttons-Eigenschaften in einer XML-Datei abgelegt.

    <buttonList>
       <button>
          <name>OK</name>
          <left>10</left>
          <top>10</Top>
          <width>30</width>
          <height>100</height>
       </button>
    
       <button>
       ...
       ...
       </button>
    </buttonList>
    

    Mit dem Parser TinyXml versuche ich durch das Dokument zu laufen und einen std::vector der Klasse Button mit den Daten zu füllen, die aus dem Dokument gelesen wurden.
    Die Klasse Button hat fünf Datenelemente, jeweils eines für Namen des Buttons, left, top, width und height.

    vector<Button> buttonList;
    for ( TiXmlElement* button = root->FirstChildElement( );
          button;
          button = button->NextSiblingElement( ) )
    {
      buttonList.push_back(nodeToButton(button));
    }
    

    Schließlich iteriere ich über die Collection mit Objekten des Typs Button....
    aber wie kann ich aus diesen "Attributen" (name, etc..) einen Button erstellen?

    for ( vector<Button>::size_type i = 0,
                                    n = buttonList.size( );
          i < n;
          ++i )
    {
    ????????????????? 
    ????????????????
    }
    

    Kann mir vielleicht jemand weiterhelfen? Vielen Dank schonmal
    Gruß Alexia


  • Administrator



  • Hallo,

    ich habe jetzt folgende Maßen probiert, aber leider ohne Erfolg

    for ( vector<Button>::size_type i = 0,
                                         n = buttonList.size( );
            i < n;
            ++i )
    {
      m_button[i].Create(_T(buttonList[i].Text),   
                                WS_CHILD|WS_VISIBLE|BS_PUSHBUTTON, 
                                CRect(buttonList[i].X, buttonList[i].Y,
                                buttonList[i].X + buttonList[i].Breite, 
                                buttonList[i].Y + buttonList.Höhe, 
                                this, buttonList[i].ID);
    }
    

    wobei ich sagen muß, dass ich Probleme mit der IDC's von den Buttons habe, da ich leider nicht weiß, wie ich sie in der resource.h-Datei reinbringen soll.
    Auf eine kleine Hilfe würde ich mich freuen.

    Danke und Gruß, Alexia


Anmelden zum Antworten