GUI in c++



  • hallo, ich lerne jetzt seit ca 2 wochen c++. was mich die ganze zeit schon stört ist, dass man kein wirklich schönes interface hat. ich habe das mal so schön wie möglich in meinem taschenrechner mit menü gemacht aber ich wollte mal wissen wie man das in eine fensterawendung ändert. hier einfach mal mein code:

    #include <iostream>
    #include <cmath>
    using namespace std;
    int main()
    {
        char eingabe;
    
        do
    	{
    	cout << "Hauptmenu\n Was fuer eine Rechnung wollen sie durchfuehren? " << endl;
    	cout << "Funktionen:    |    Ihre eingabe: \n";
    	cout << "_____________________________\n_____________________________\n" << endl;
    	cout << "  +            <1> " << endl;
    	cout << "_____________________________\n" << endl;
    	cout << "  -            <2> " << endl;
    	cout << "_____________________________\n" << endl;
    	cout << "  *            <3> " << endl;
    	cout << "_____________________________\n" << endl;
    	cout << "  /            <4> " << endl;
    	cout << "_____________________________\n_____________________________" << endl;
    	cout << "Verlassen              <5> " << endl;
    	cout << endl;
    	cout << " Ihre Eingabe: ";
    	cin >> eingabe;
    	cout << endl;
    	double zahl1, zahl2, ergebnis;
    
           cout << endl;
           cout << "geben sie die erste Zahl ein:\n ";
    	   cin >> zahl1;
           cout << "geben sie die zweite zahl ein:\n ";
           cin >> zahl2; 
    
           ergebnis = zahl1 + zahl2 ; 
    
            // Auswertung der Eingabe
    
           switch (eingabe)
    
    		{ 
    
                // Addition
    
            case '1':
    
                ergebnis = zahl1 + zahl2 ;
                cout << endl;
                cout << " " << zahl1 << " + " << zahl2;
                cout << " = " << ergebnis << endl;
                cout << endl;
                break;
    
                // Subtraktion
    
            case '2':
    
                ergebnis = zahl1 - zahl2 ;
    
                cout << endl;
                cout << " " << zahl1 << " - " << zahl2;
                cout << " = " << ergebnis << endl;
                cout << endl;
                break;
    
                // Multiplikation
    
            case '3':
    
                ergebnis = zahl1 * zahl2 ;
                cout << endl;
                cout << " " << zahl1 << " * " << zahl2;
                cout << " = " << ergebnis << endl;
                cout << endl;
                break;
    
                // Division
    
                case '4':
    
                ergebnis = zahl1 / zahl2 ;
                cout << endl;
                cout << " " << zahl1 << " / " << zahl2;
                cout << " = " << ergebnis << endl;
                cout << endl;
                break;
    
            case '5': cout << " Programm wird beendet " << endl;
    			return 0;
                break;
    
            default: cout << " Ungueltige Eingabe! " << endl;
    		}
    	}while ( eingabe != '5');
    
    		cout << "wird beendet" << endl;
    
    	cout << endl;
    	return 0;
    }
    




  • ok DAS ist mir noch ein stück zu kompliziert XD



  • qt ist eigentlich gar nicht so kompliziert. Oder genauer gesagt, qt *kann* sehr einfach und übersichtlich sein 😉



  • nicopro98 schrieb:

    ok DAS ist mir noch ein stück zu kompliziert XD

    Versuch erstmal die Grundlagen von C++ zu erlernen.
    Benutzerführung und Eingabebehandlung ist da nur hinderlich und ein eigenes, komplexes Thema.

    Du wirst die meisten deiner bisherigen Programme eh nie wieder anschauen/starten.



  • lern C++ zuerst ohne grafik. wenn du in zwei jahren damit fertig bist, wird so etwas in der art möglich sein:

    #include <experimental/io2d>
    using namespace std::experimental::io2d;
    
    int main () {
       auto surface = make_display_surface(640, 480, format::argb32);
       surface.draw_callback([](display_surface& surf) {
         surf.paint(rgba_color::papaya_whip());
         surf.render_text("Hello, World!", { 50., 50. }, rgba_color::white_smoke());
       });
       return surface.show();
    }
    

    https://cristianadam.eu/20160228/introducing-c-plus-plus-experimental-io2d/
    http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2016/p0267r2.pdf
    https://github.com/mikebmcl/N3888_RefImpl



  • daddy_felix schrieb:

    qt ist eigentlich gar nicht so kompliziert. Oder genauer gesagt, qt *kann* sehr einfach und übersichtlich sein 😉

    👍

    qt lohnt sich meiner meinung nach auch sehr, da du damit relativ einfach, schnell und übersichtlich arbeiten kannst, wie oben schon erwähnt.

    ich nutze fast ausschließlich qt zur gui erstellung.

    man muss sich aber sicherlich einarbeiten... aber wo nicht? 🙄


Log in to reply