Problem bei nichtdeklarierter Bezeichner



  • Hallo,

    ich habe zwei Klassen geschreiben:

    class Klasse1
    {
    private:
      // alle Variablen...
    public:
      // Konstrukter, Destrukter, Methoden...
    };
    
    class Klasse2
    {
    private:
      //...
    public:
      //...
      void specialStyles()
      {
        Klasse1 obj(10, 11);
        // ...
      }
    };
    

    Ich erhalte daraufhin folgende Fehlermeldungen:

    error C2065: 'Klasse1': nichtdeklarierter Bezeichner
    error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'obj'
    error C2065: 'obj': nichtdeklarierter Bezeichner
    

    Ich habe warscheinlich (schon wieder) einen dummen Fehler gemacht. Warscheinlich habe ich etwas vergessen, das mir jetzt nicht einfällt.
    Weiß einer was ich falsch gemacht habe?



  • Leben die beiden Klassen in zwei *.h-Dateien und haben sich gegenseitig inkludiert?



  • Nein, die beiden Klassen befinden sich in ein und der selben *.cpp-Datei.



  • Bitte Originalinhalt der Datei posten.



  • Puh. Der ist ziemlich lang, aber okay. Eigentlich ist das der Orginal-Code:

    class html
    {
    private:
    	string titel;
    	string beschreibung;
    	string schluesselwoerter;
    	int borderStyle;					// Rahmen-Style
    	string bgColor;						// Hintergrundfarbe
    	string bgPath;						// Pfad zum Background-Bild
    	string fontColor;					// Schriftfarbe
    	string fontFamily;					// Schriftart
    	int fontSize;						// Schriftgröße
    public:
    	html(string ttl, string besch, string schlw)
    		: titel(ttl), beschreibung(besch), schluesselwoerter(schlw)
    	{}
    
    	void stdOptions()						// Standart-Werte wie Titel, Beschreibung ect. setzten
    	{
    		cout <<"W" <<ae <<"hlen Sie den Titel f" <<ue <<"r Ihre Seite, dieser wird oben im Tab des Browserfenstersangezeigt.\n";
    		cin >>titel;
    		cout <<"Schreiben Sie eine kleine Beschreibung Ihrer Seite.\n";
    		cin >>beschreibung;
    		cout <<"Geben Sie ein paar Schl" <<ue <<"sselw" <<oe <<"rter f" <<ue <<"r Ihre Seite ein, damit kann man Ihre Seiteper Suchmaschine finden.\n";
    		cin >>schluesselwoerter;
    		system("pause");					// Nach Tastaturklick -> weiter
    		system("cls");						// Clear Screen
    	}
    
    	void backgroundStyle()
    	{
    		int eingabe;
    
    		cout <<"Wollen Sie ein Bild oder eine Farbe als Hintergrund haben?\n";
    		cout <<"1 = Bild\n2 = Farbe\n";
    		cin >>eingabe;
    
    		switch (eingabe)
    		{
    		case 1:
    			bgPath = this->setPicPath();								// Pfad zum Background-Pic setzen
    			break;
    		case 2:
    			bgColor = this->colorConvert();								// Hintergrundfarbe setzen
    			break;
    		}
    	}
    
    	string setPicPath()
    	{
    		string picPath;
    
    		cout <<"Geben Sie den Pfad zum Bild ein.\n";
    		cin >>picPath;
    		return picPath;
    	}
    
    	void specialStyles()
    	{
    		 :arrow_right:  definedStyle curr;
    
    	}
    
    	void styleOptions()
    	{
    		int eingabe;
    
    		cout <<"Welchen Style wollen Sie einstellen?\n";
    		cout <<"1 = Textstyle.\n";
    		cout <<"2 = Hintergrund.\n";
    		cout <<"3 = Besondere Styles.\n";
    		cin >>eingabe;
    		system("cls");
    
    		switch (eingabe)
    		{
    		case 1:
    			this->chooseTxtStyle();
    			system("cls");
    			this->giveOptions();
    			break;
    		case 2:
    			this->backgroundStyle();
    			system("cls");
    			this->giveOptions();
    			break;
    		case 3:
    			system("cls");
    			this->specialStyles();
    			this->giveOptions();
    		default:
    			cout <<"Falsche Eingabe!\n";
    			system("cls");
    			this->styleOptions();
    		}
    	}
    
    	void chooseTxtStyle()
    	{
    
    		cout <<"Welchen Rahmensyle m" <<oe <<"chten Sie f" <<ue <<"r Ihre Homepage nehmen?\n";
    		cout <<"Eine kleine Vorschau...\n";
    		system("pause");
    
    		system("start C:/HtmlManager/styles/preview.html");		// starten der Html-Styles Vorschau
    
    		cout <<"\nStyle 1\nStyle 2\nStyle 3\nStyle 4\nStyle 5\n";
    		cin >>borderStyle;
    		system("cls");
    
    		int eingabe;
    
    		cout <<"Welche Schriftart m" <<oe <<"chten Sie haben\n";
    		cout <<"1 = Arial\n";
    		cout <<"2 = Verdana\n";
    		cout <<"3 = Helvectia\n";
    		cout <<"4 = Comic Sans MS\n";
    		cout <<"5 = New Times Roman\n";
    		cout <<"6 = Courier\n";
    		cout <<"7 = Courier New\n";
    		cout <<"8 = Wide Latin\n";
    		cin >>eingabe;
    		system ("cls");
    
    		switch (eingabe)
    		{
    		case 1: fontFamily = "Arial"; break;
    		case 2: fontFamily = "Verdana"; break;
    		case 3: fontFamily = "Helvectia"; break;
    		case 4: fontFamily = "Comic Sans MS"; break;
    		case 5: fontFamily = "New Times Roman"; break;
    		case 6: fontFamily = "Courier"; break;
    		case 7: fontFamily = "Courier New"; break;
    		case 8: fontFamily = "Wide Latin"; break;
    		}
    
    		cout <<"Welche Schriftfarbe m" <<oe <<"chten Sie haben?\n";
    
    		fontColor = colorConvert();
    		system("cls");
    
    		cout <<"Welche Schriftgr" <<oe <<sz <<"e m" <<oe <<"chten Sie haben?(in Pixel)\n";
    		cin >>fontSize;
    	}
    
    	string colorConvert()
    	{
    		int red, green, blue;
    		stringstream color;
    		system("cls");
    
    		cout <<"Farbintensit" <<ae <<"t f" <<ue <<"r Rot?\n";
    		cin >>red;
    		cout <<"Farbintensit" <<ae <<"t f" <<ue <<"r Gr"<<ue <<"n?\n";
    		cin >>green;
    		cout <<"Farbintensit" <<ae <<"t f" <<ue <<"r Blau?\n";
    		cin >>blue;
    
    		color <<hex <<"#" <<red <<green <<blue;				// ins Hex-Format
    		system("cls");
    
    		return color.str();
    	}
    	void giveOptions()							// zeigt Optionen an, die man machen kann und 
    	{											// führt die entsprechende Funktion aus
    		int eingabe;
    
    		cout <<"Was wollen Sie als n" <<ae <<"chstes machen?\n\n";
    		cout <<"1 = Titel, Beschreibung, Schl" <<ue <<"sselw" <<oe <<"rter " <<ae <<"ndern.\n";
    		cout <<"2 = Stil der Seite " <<ae <<"nderen.\n";
    		cout <<"3 = Objekt hinzuf" <<ue <<"gen.\n";
    		cout <<"4 = Credits sehen.\n";
    		cout <<"5 = Speichern.\n";
    		cin >>eingabe;
    
    		switch(eingabe)
    		{
    		case 1:
    			system("cls");			// WICHTIG: Hier system("cls"); immer als erstes
    			stdOptions();
    			giveOptions();			// Zurück zu den Optionen
    			break;
    		case 2:
    			system("cls");			// hier kein giveOptions(f), sonst rekursiever Überlauf WICHTIG: Muss in die
    			styleOptions();			// saveFile()!
    			break;
    		case 3:
    			system("cls");
    			giveOptions();
    			break;
    		case 4:
    			system("cls");
    			giveOptions();
    			break;
    		case 5:
    			system("cls");
    			giveOptions();
    			break;
    		default:
    			system("cls");
    			cout <<"Falsche Eingabe!\n";
    			giveOptions();
    			break;
    		}
    	}
    };
    
    class definedStyle
    {
    private:
    	bool isSelected[20];				// prüft ob der Code selektiert ist
    	string nameCurrentStyle;			// Name des aktuellen Styls (Style werden sofort gespeichert!)
    	string currentStyleCode;			// Zusammengefügter Code aus dem aktuellen Style (wird großer Code!)
    	string styleCodes[20];				// Style Codes als Array und dynamischer Speicher (viele Codes!)
    	string rollOverCode;
    public:
    	definedStyle()
    		: nameCurrentStyle("")
    	{
    		for (int i; i < 21; ++i)
    		{
    			isSelected[i] = false;									// alle isSelected auf false setzen (zur Sicherheit!)
    		}
    
    		// Codes für die Styles definieren
    		styleCodes[0] = "font-style:italic;\n";						// Kursiv
    		styleCodes[1] = "font-weight: bold;\n";						// Fett
    		styleCodes[2] = "border-bottom:";							// + colorConvert + Rahmen Style + Dicke des Rahmens in px
    		styleCodes[3] = "background-color:#";						// Hintergrund-Farbe WICHTIG: Muss noch colorConvert gemacht werden!
    		styleCodes[4] = "color:#";									// WICHTIG: Muss noch colorConvert gemacht werden!
    		styleCodes[5] = "font-size:";								// Größe in px muss noch erfragt werden!
    		styleCodes[6] = "text-decoration:blink;\n";
    		styleCodes[7] = "text-decoration:line-through;\n";			// Kann nicht mit anderer Text-Decoration kooperieren!
    		styleCodes[8] = "word-spacind:";							// Noch Abstand in px
    		styleCodes[9] = "letter-spacing:";							// Noch Abstand in px
    		styleCodes[10] = "text-shadow: 3px 2px #";					// Schatten 1 + colorConvert
    		styleCodes[11] = "text-shadow: 3px 2px 4 px #";				// Schatten 2 + colorConvert
    		styleCodes[12] = "border-top: ";							// + colorConvert + Rahmen Style + Dicke des Rahmens in px
    		styleCodes[13] = "font-family:'Courier New';\n";			// Andere Font
    		styleCodes[14] = "direction:rtl;\nunicode-bidi:bidi-override;\ntext-align:left;\n";		// Umgekehrt
    		styleCodes[15] = "border:";									// + colorConvert + Rahmen Style + Dicke des Rahmens in px
    		// hier kommen alle Rollover, diese kommen in den :hover, alle davor in den normalen!!!
    		styleCodes[16] = "color:#";									// colorConvert bitte!
    		styleCodes[17] = "border-bottom:";							// + colorConvert + Rahmen Style + Dicke des Rahmens in px
    		styleCodes[18] = "background-color:#";						// colorConvert bitte!
    		styleCodes[19] = "border:";									// + colorConvert + Rahmen Style + Dicke des Rahmens in px
    	}
    
    	~definedStyle()
    	{
    		// delete currentStyleCode;			// da dynamischer Speicher
    	}
    
    	void defineStyle(html f)
    	{
    		cout <<"Wie soll der neu Style hei" <<sz <<"en?\n";
    		cin >>nameCurrentStyle;
    		cout <<"Hier eine kleine Vorschau m" <<oe <<"glicher Styles...\n";
    		system("pause");
    		system("start C:/HtmlManager/styles/preview.html");						// starten der Html-Styles Vorschau
    		system("cls");															// nochmal clrscr
    
    		int eingabe;															// die Eingabe des Users
    		cout <<"Welche Stile sollen in Ihren Style eingebunden werden?\n";
    		cout <<"1 = Kursiver Stil\n";
    		cout <<"2 = Fetter Stil\n";
    		cout <<"3 = Unterstrichener Stil\n";
    		cout <<"4 = Hintergrundfarbener Stil\n";
    		cout <<"5 = Schriftfarbener Stil\n";
    		cout <<"6 = Kleine Schrift Stil\n";
    		cout <<"7 = Blinkender Stil\n";
    		cout <<"8 = Durchgestrichener Stil\n";
    		cout <<"9 = Wort Abstand Stil\n";
    		cout <<"10 = Buchstaben Abstand Stil\n";
    		cout <<"11 = Schatten Abstand Stil 1\n";
    		cout <<"12 = Schatten Abstand Stil 2\n";
    		cout <<"13 = " <<UE <<"berstrichener Stil\n";
    		cout <<"14 = Codierter Stil";
    		cout <<"15 = Umgekehrter Stil\n";
    		cout <<"16 = Rahmen Stil\n";
    		cout <<"17 = Rollover Stil 1\n";
    		cout <<"18 = Rollover Stil 2\n";
    		cout <<"19 = Rollover Stil 3\n";
    		cout <<"20 = Rollover Stil 4\n";
    		cout <<"21 = Style speichern\n";
    		cin >>eingabe;
    
    		switch (eingabe)
    		{
    		case 1:
    			if (isSelected[0])
    				break;
    			isSelected[0] = true;				// Style 1 ist hinzugefügt
    			if (isSelected[0])
    				currentStyleCode += styleCodes[0];
    			break;
    		case 2:
    			isSelected[1] = true;				// Style 2 ist hinzugefügt
    			break;
    		case 3:
    			isSelected[2] = true;				//...
    			break;
    		case 4:
    			isSelected[3] = true;
    			break;
    		case 5:
    			isSelected[4] = true;
    			break;
    		case 6:
    			isSelected[5] = true;
    			break;
    		case 7:
    			isSelected[6] = true;
    			break;
    		case 8:
    			isSelected[7] = true;
    			break;
    		case 9:
    			isSelected[8] = true;
    			break;
    		case 10:
    			isSelected[9] = true;
    			break;
    		case 11:
    			isSelected[10] = true;
    			break;
    		case 12:
    			isSelected[12] = true;
    			break;
    		case 13:
    			isSelected[13] = true;
    			break;
    		case 14:
    			isSelected[14] = true;
    			break;
    		case 15:
    			isSelected[15] = true;
    			break;
    		case 17:
    			isSelected[16] = true;
    			break;
    		case 18:
    			isSelected[17] = true;
    			break;
    		case 19:
    			isSelected[18] = true;
    			break;
    		case 20:
    			isSelected[19] = true;
    			break;
    		case 21:							// speichern
    			break;
    		default:
    			system("cls");
    			f.giveOptions();
    			break;
    		}
    	}
    
    	string colorConvert()
    	{
    		int red, green, blue;
    		stringstream color;
    
    		cout <<"Farbintensit" <<ae <<"t f" <<ue <<"r Rot?\n";
    		cin >>red;
    		cout <<"Farbintensit" <<ae <<"t f" <<ue <<"r Gr"<<ue <<"n?\n";
    		cin >>green;
    		cout <<"Farbintensit" <<ae <<"t f" <<ue <<"r Blau?\n";
    		cin >>blue;
    
    		color <<hex <<"#" <<red <<green <<blue;				// ins Hex-Format
    		system("cls");
    
    		return color.str();
    	}
    
    };
    


  • Verzeih, Janjan ist noch neu dabei. Er brauchte ein möglichst klein zusammengeschrumpftes Beispiuel, wo der Fehler auch noch vorkommt.
    Dein Problem ist, daß definedStyle html benutzen möchte und auch html definedStyle benutzen möchte.
    Das geht nicht zugleich.
    Aber was supi geht, ist, wenn die eine Klasse da ist und die andere nur als Referenz oder Zeiger.
    Oft geht es auch, nur die Implementierung nach *.cpp-Dateien auszulagern, aber uih, obacht passen, bei der inen Datei unter und beider anderen über der Klassendefinition den Partner inkludieren. Hab ich hier mit html::specialStyles() gemacht. Oh, das ist aber böse. Versuch mal, zu schauen, ob Du, wenn Du nochmal schaust, wie #include geht, sehen kannst, wie der trick geht. Wenns nicht klappt, ist es auch keine Schande, dann machen wir es irgendwie einfacher; mein Vorschlag war davon inspiriert, möglischt wenig zu ändern.

    #include <string>
    #include <iostream>
    #include <process.h>
    #include <windows.h>
    #include <string>
    #include <sstream>
    using namespace std;
    #define ae "ae"
    #define ue "ue"
    #define Ue "Ue"
    #define oe "oe"
    #define sz "sz"
    #define UE "UE"
    
    class definedStyle;
    
    class html
    {
    private:
        string titel;
        string beschreibung;
        string schluesselwoerter;
        int borderStyle;                    // Rahmen-Style
        string bgColor;                        // Hintergrundfarbe
        string bgPath;                        // Pfad zum Background-Bild
        string fontColor;                    // Schriftfarbe
        string fontFamily;                    // Schriftart
        int fontSize;                        // Schriftgröße
    public:
        html(string ttl, string besch, string schlw)
            : titel(ttl), beschreibung(besch), schluesselwoerter(schlw)
        {}
    
        void stdOptions()                        // stan****-Werte wie Titel, Beschreibung ect. setzten
        {
            cout <<"W" <<ae <<"hlen Sie den Titel f" <<ue <<"r Ihre Seite, dieser wird oben im Tab des Browserfenstersangezeigt.\n";
            cin >>titel;
            cout <<"Schreiben Sie eine kleine Beschreibung Ihrer Seite.\n";
            cin >>beschreibung;
            cout <<"Geben Sie ein paar Schl" <<ue <<"sselw" <<oe <<"rter f" <<ue <<"r Ihre Seite ein, damit kann man Ihre Seiteper Suchmaschine finden.\n";
            cin >>schluesselwoerter;
            system("pause");                    // Nach Tastaturklick -> weiter
            system("cls");                        // Clear Screen
        }
    
        void backgroundStyle()
        {
            int eingabe;
    
            cout <<"Wollen Sie ein Bild oder eine Farbe als Hintergrund haben?\n";
            cout <<"1 = Bild\n2 = Farbe\n";
            cin >>eingabe;
    
            switch (eingabe)
            {
            case 1:
                bgPath = this->setPicPath();                                // Pfad zum Background-Pic setzen
                break;
            case 2:
                bgColor = this->colorConvert();                                // Hintergrundfarbe setzen
                break;
            }
        }
    
        string setPicPath()
        {
            string picPath;
    
            cout <<"Geben Sie den Pfad zum Bild ein.\n";
            cin >>picPath;
            return picPath;
        }
    
        void specialStyles();
    
        void styleOptions()
        {
            int eingabe;
    
            cout <<"Welchen Style wollen Sie einstellen?\n";
            cout <<"1 = Textstyle.\n";
            cout <<"2 = Hintergrund.\n";
            cout <<"3 = Besondere Styles.\n";
            cin >>eingabe;
            system("cls");
    
            switch (eingabe)
            {
            case 1:
                this->chooseTxtStyle();
                system("cls");
                this->giveOptions();
                break;
            case 2:
                this->backgroundStyle();
                system("cls");
                this->giveOptions();
                break;
            case 3:
                system("cls");
                this->specialStyles();
                this->giveOptions();
            default:
                cout <<"Falsche Eingabe!\n";
                system("cls");
                this->styleOptions();
            }
        }
    
        void chooseTxtStyle()
        {
    
            cout <<"Welchen Rahmensyle m" <<oe <<"chten Sie f" <<ue <<"r Ihre Homepage nehmen?\n";
            cout <<"Eine kleine Vorschau...\n";
            system("pause");
    
            system("start C:/HtmlManager/styles/preview.html");        // starten der Html-Styles Vorschau
    
            cout <<"\nStyle 1\nStyle 2\nStyle 3\nStyle 4\nStyle 5\n";
            cin >>borderStyle;
            system("cls");
    
            int eingabe;
    
            cout <<"Welche Schriftart m" <<oe <<"chten Sie haben\n";
            cout <<"1 = Arial\n";
            cout <<"2 = Verdana\n";
            cout <<"3 = Helvectia\n";
            cout <<"4 = Comic Sans MS\n";
            cout <<"5 = New Times Roman\n";
            cout <<"6 = Courier\n";
            cout <<"7 = Courier New\n";
            cout <<"8 = Wide Latin\n";
            cin >>eingabe;
            system ("cls");
    
            switch (eingabe)
            {
            case 1: fontFamily = "Arial"; break;
            case 2: fontFamily = "Verdana"; break;
            case 3: fontFamily = "Helvectia"; break;
            case 4: fontFamily = "Comic Sans MS"; break;
            case 5: fontFamily = "New Times Roman"; break;
            case 6: fontFamily = "Courier"; break;
            case 7: fontFamily = "Courier New"; break;
            case 8: fontFamily = "Wide Latin"; break;
            }
    
            cout <<"Welche Schriftfarbe m" <<oe <<"chten Sie haben?\n";
    
            fontColor = colorConvert();
            system("cls");
    
            cout <<"Welche Schriftgr" <<oe <<sz <<"e m" <<oe <<"chten Sie haben?(in Pixel)\n";
            cin >>fontSize;
        }
    
        string colorConvert()
        {
            int red, green, blue;
            stringstream color;
            system("cls");
    
            cout <<"Farbintensit" <<ae <<"t f" <<ue <<"r Rot?\n";
            cin >>red;
            cout <<"Farbintensit" <<ae <<"t f" <<ue <<"r Gr"<<ue <<"n?\n";
            cin >>green;
            cout <<"Farbintensit" <<ae <<"t f" <<ue <<"r Blau?\n";
            cin >>blue;
    
            color <<hex <<"#" <<red <<green <<blue;                // ins Hex-Format
            system("cls");
    
            return color.str();
        }
        void giveOptions()                            // zeigt Optionen an, die man machen kann und
        {                                            // führt die entsprechende Funktion aus
            int eingabe;
    
            cout <<"Was wollen Sie als n" <<ae <<"chstes machen?\n\n";
            cout <<"1 = Titel, Beschreibung, Schl" <<ue <<"sselw" <<oe <<"rter " <<ae <<"ndern.\n";
            cout <<"2 = Stil der Seite " <<ae <<"nderen.\n";
            cout <<"3 = Objekt hinzuf" <<ue <<"gen.\n";
            cout <<"4 = Credits sehen.\n";
            cout <<"5 = Speichern.\n";
            cin >>eingabe;
    
            switch(eingabe)
            {
            case 1:
                system("cls");            // WICHTIG: Hier system("cls"); immer als erstes
                stdOptions();
                giveOptions();            // Zurück zu den Optionen
                break;
            case 2:
                system("cls");            // hier kein giveOptions(f), sonst rekursiever Überlauf WICHTIG: Muss in die
                styleOptions();            // saveFile()!
                break;
            case 3:
                system("cls");
                giveOptions();
                break;
            case 4:
                system("cls");
                giveOptions();
                break;
            case 5:
                system("cls");
                giveOptions();
                break;
            default:
                system("cls");
                cout <<"Falsche Eingabe!\n";
                giveOptions();
                break;
            }
        }
    };
    
    class definedStyle
    {
    private:
        bool isSelected[20];                // prüft ob der Code selektiert ist
        string nameCurrentStyle;            // Name des aktuellen Styls (Style werden sofort gespeichert!)
        string currentStyleCode;            // Zusammengefügter Code aus dem aktuellen Style (wird großer Code!)
        string styleCodes[20];                // Style Codes als Array und dynamischer Speicher (viele Codes!)
        string rollOverCode;
    public:
        definedStyle()
            : nameCurrentStyle("")
        {
            for (int i; i < 21; ++i)
            {
                isSelected[i] = false;                                    // alle isSelected auf false setzen (zur Sicherheit!)
            }
    
            // Codes für die Styles definieren
            styleCodes[0] = "font-style:italic;\n";                        // Kursiv
            styleCodes[1] = "font-weight: bold;\n";                        // Fett
            styleCodes[2] = "border-bottom:";                            // + colorConvert + Rahmen Style + Dicke des Rahmens in px
            styleCodes[3] = "background-color:#";                        // Hintergrund-Farbe WICHTIG: Muss noch colorConvert gemacht werden!
            styleCodes[4] = "color:#";                                    // WICHTIG: Muss noch colorConvert gemacht werden!
            styleCodes[5] = "font-size:";                                // Größe in px muss noch erfragt werden!
            styleCodes[6] = "text-decoration:blink;\n";
            styleCodes[7] = "text-decoration:line-through;\n";            // Kann nicht mit anderer Text-Decoration kooperieren!
            styleCodes[8] = "word-spacind:";                            // Noch Abstand in px
            styleCodes[9] = "letter-spacing:";                            // Noch Abstand in px
            styleCodes[10] = "text-shadow: 3px 2px #";                    // Schatten 1 + colorConvert
            styleCodes[11] = "text-shadow: 3px 2px 4 px #";                // Schatten 2 + colorConvert
            styleCodes[12] = "border-top: ";                            // + colorConvert + Rahmen Style + Dicke des Rahmens in px
            styleCodes[13] = "font-family:'Courier New';\n";            // Andere Font
            styleCodes[14] = "direction:rtl;\nunicode-bidi:bidi-override;\ntext-align:left;\n";        // Umgekehrt
            styleCodes[15] = "border:";                                    // + colorConvert + Rahmen Style + Dicke des Rahmens in px
            // hier kommen alle Rollover, diese kommen in den :hover, alle davor in den normalen!!!
            styleCodes[16] = "color:#";                                    // colorConvert bitte!
            styleCodes[17] = "border-bottom:";                            // + colorConvert + Rahmen Style + Dicke des Rahmens in px
            styleCodes[18] = "background-color:#";                        // colorConvert bitte!
            styleCodes[19] = "border:";                                    // + colorConvert + Rahmen Style + Dicke des Rahmens in px
        }
    
        ~definedStyle()
        {
            // delete currentStyleCode;            // da dynamischer Speicher
        }
    
        void defineStyle(html f)
        {
            cout <<"Wie soll der neu Style hei" <<sz <<"en?\n";
            cin >>nameCurrentStyle;
            cout <<"Hier eine kleine Vorschau m" <<oe <<"glicher Styles...\n";
            system("pause");
            system("start C:/HtmlManager/styles/preview.html");                        // starten der Html-Styles Vorschau
            system("cls");                                                            // nochmal clrscr
    
            int eingabe;                                                            // die Eingabe des Users
            cout <<"Welche Stile sollen in Ihren Style eingebunden werden?\n";
            cout <<"1 = Kursiver Stil\n";
            cout <<"2 = Fetter Stil\n";
            cout <<"3 = Unterstrichener Stil\n";
            cout <<"4 = Hintergrundfarbener Stil\n";
            cout <<"5 = Schriftfarbener Stil\n";
            cout <<"6 = Kleine Schrift Stil\n";
            cout <<"7 = Blinkender Stil\n";
            cout <<"8 = Durchgestrichener Stil\n";
            cout <<"9 = Wort Abstand Stil\n";
            cout <<"10 = Buchstaben Abstand Stil\n";
            cout <<"11 = Schatten Abstand Stil 1\n";
            cout <<"12 = Schatten Abstand Stil 2\n";
            cout <<"13 = " <<UE <<"berstrichener Stil\n";
            cout <<"14 = Codierter Stil";
            cout <<"15 = Umgekehrter Stil\n";
            cout <<"16 = Rahmen Stil\n";
            cout <<"17 = Rollover Stil 1\n";
            cout <<"18 = Rollover Stil 2\n";
            cout <<"19 = Rollover Stil 3\n";
            cout <<"20 = Rollover Stil 4\n";
            cout <<"21 = Style speichern\n";
            cin >>eingabe;
    
            switch (eingabe)
            {
            case 1:
                if (isSelected[0])
                    break;
                isSelected[0] = true;                // Style 1 ist hinzugefügt
                if (isSelected[0])
                    currentStyleCode += styleCodes[0];
                break;
            case 2:
                isSelected[1] = true;                // Style 2 ist hinzugefügt
                break;
            case 3:
                isSelected[2] = true;                //...
                break;
            case 4:
                isSelected[3] = true;
                break;
            case 5:
                isSelected[4] = true;
                break;
            case 6:
                isSelected[5] = true;
                break;
            case 7:
                isSelected[6] = true;
                break;
            case 8:
                isSelected[7] = true;
                break;
            case 9:
                isSelected[8] = true;
                break;
            case 10:
                isSelected[9] = true;
                break;
            case 11:
                isSelected[10] = true;
                break;
            case 12:
                isSelected[12] = true;
                break;
            case 13:
                isSelected[13] = true;
                break;
            case 14:
                isSelected[14] = true;
                break;
            case 15:
                isSelected[15] = true;
                break;
            case 17:
                isSelected[16] = true;
                break;
            case 18:
                isSelected[17] = true;
                break;
            case 19:
                isSelected[18] = true;
                break;
            case 20:
                isSelected[19] = true;
                break;
            case 21:                            // speichern
                break;
            default:
                system("cls");
                f.giveOptions();
                break;
            }
        }
    
        string colorConvert()
        {
            int red, green, blue;
            stringstream color;
    
            cout <<"Farbintensit" <<ae <<"t f" <<ue <<"r Rot?\n";
            cin >>red;
            cout <<"Farbintensit" <<ae <<"t f" <<ue <<"r Gr"<<ue <<"n?\n";
            cin >>green;
            cout <<"Farbintensit" <<ae <<"t f" <<ue <<"r Blau?\n";
            cin >>blue;
    
            color <<hex <<"#" <<red <<green <<blue;                // ins Hex-Format
            system("cls");
    
            return color.str();
        }
    
    };
    
    void html::specialStyles()
    {
    			 definedStyle curr;
    
    }
    


  • Alles klar, danke für die Hilfe!


Anmelden zum Antworten