Announcement

Collapse
No announcement yet.

GUI soll Port öffnen

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • GUI soll Port öffnen

    Hallo zusammen,

    ich habe ein kleines Progrämmchen geschrieben (Konsole) welches ich mit einem Handterminal (PocketPC/WM5-6/CE4.2-5.0) über den Telnetport auf meinem rechner starte. Klappt alles auch wunderbar.. Die cin/cout werden richtig angezeigt usw...

    nun möchte ich das ganze aber visualisieren...

    Dh.

    Ich möchte eine kleine GUI entwerfen wo man werte eingeben/ändern kann. diese Werte sollen dann aber über den alten weg (über den Telnetport)
    ausgegeben werden.

    Wie kann ich sowas bewerkstelligen? Wie bekommt meine Konsolenanwendung die Parameter?

    Wäre super wenn mich jmd unterstützen könnte, bzw ne idee hat...

    Auf eine baldige Antwort freut sich

    Stephan J.
    Windows Mobile Tools

  • #2
    Wohl am Besten als Aufrufparameter der Konsolenanwendung
    Christian

    Comment


    • #3
      Originally posted by Christian Marquardt View Post
      Wohl am Besten als Aufrufparameter der Konsolenanwendung
      Wie kann ich mir sowas vorstellen?

      Bring mir gerade selbst c++ bei und bin noch net so super fit
      Windows Mobile Tools

      Comment


      • #4
        Üblicherweise sieht eine Konsolenanwendung die mit main startet so aus

        int main(int argc, char* argv[])
        {
        .....
        return 0;
        }

        argc = Anzahl der Parameter
        argv = Array mit den Paramtern (0 = das Programm selbst)
        Christian

        Comment


        • #5
          Originally posted by Christian Marquardt View Post
          Üblicherweise sieht eine Konsolenanwendung die mit main startet so aus

          int main(int argc, char* argv[])
          {
          .....
          return 0;
          }

          argc = Anzahl der Parameter
          argv = Array mit den Paramtern (0 = das Programm selbst)
          ja so in etwa

          nun will ich aber alle parameter in vo-ce() durch ne GUI ändern....

          Code:
          #include <iostream.h>
          #include <conio.h>
          #include <stdlib.h>
          #include <stdio.h>
          #include <time.h>
          using namespace std;
          
          
          
          //Variablen deklarieren
          int p,auftra,eingabe1,regal,zahl1,zahl2,zahl3,inventu,r,f,a,be_stan,wa,b,lagerort;
          char o,w;
          
          
          //Prototypen
          void inventur();
          void bestand();
          void neuanschaffung();
          void voce();
          void spr1();
          void spr2();
          void sp1();
          void loop();
          void bestaloop();
          void neuloop();
          void nichtmerhda();
          void screen();
          void test();
          
          //Hauptprogramm
          main()
          {
          loop();
          }
          
          void loop()
          {
          system("cls");
          cout<<"Rodata vo-CE Test\n\n";
          cout<<"1. Inventur\n";
          cout<<"2. Bestand\n";
          cout<<"3. Neuanschaffung\n";
          cout<<"4. Pick by Voice\n";
          cout<<"5. Screen Buffer Size\n";
          cout<<"Auswahl: "; cin>>eingabe1;
          if (eingabe1==1)
           inventur();
          if (eingabe1==4)
           voce() ;
          if (eingabe1==2)
           bestand();
          if (eingabe1==3)
           neuanschaffung() ;
          if (eingabe1==5)
           screen();
          if (eingabe1==6)
           test();
          }
          
          
          //Unterprogramme
          void test()
          {
          
          }
          
          void screen()
          {
          
              HANDLE hOut;
              CONSOLE_SCREEN_BUFFER_INFO SBInfo;
          
              hOut = GetStdHandle(STD_OUTPUT_HANDLE);
          
              GetConsoleScreenBufferInfo(hOut,
                                         &SBInfo);
          
              cout << "Screen Buffer Size : \n";
              cout << SBInfo.dwSize.X << " x ";
              cout << SBInfo.dwSize.Y << endl;
              cout<<"Bitte druecken Sie eine Taste...";
              getch();
              loop();
          }
          
          void neuanschaffung()
          {
          neuloop();
          }
          
          void neuloop()
          {
          HANDLE hOut;
          hOut = GetStdHandle(STD_OUTPUT_HANDLE);
          int sca,az;
          char barcode[100];
          do
          {
          system("cls");
          //cout<<"Bitte Barcode\nscannen: ";cin>>sca;
          SetConsoleTextAttribute(hOut,FOREGROUND_RED|FOREGROUND_INTENSITY);
          cout<<"Bitte Barcode\nscannen: ";
              SetConsoleTextAttribute(hOut,
                                      FOREGROUND_RED |
                                      FOREGROUND_GREEN |
                                      FOREGROUND_BLUE);
          gets(barcode);
          system("cls");
          SetConsoleTextAttribute(hOut,FOREGROUND_GREEN|FOREGROUND_INTENSITY);
          cout<<"Artikel: "<< flush;
              SetConsoleTextAttribute(hOut,
                                      FOREGROUND_RED | 
                                      FOREGROUND_GREEN | 
                                      FOREGROUND_BLUE);
          cout<<barcode;   //sca;
          SetConsoleTextAttribute(hOut,FOREGROUND_GREEN);
          cout<<"\nZu bestellende\nAnzahl: ";
              SetConsoleTextAttribute(hOut,
                                      FOREGROUND_RED |
                                      FOREGROUND_GREEN |
                                      FOREGROUND_BLUE|FOREGROUND_INTENSITY);
                                      cin>>az;
          }
          while (az != 0);
          loop();
          }
          
          
          void bestand()
          {
          bestaloop();
          }
          
          void bestaloop()
          {
          do {
          system("cls");
          randomize();
            b=random (100);
            cout<<"Bitte Lagerort angeben: ";cin>>lagerort;
            cout<<"Auf dem Lagerort "<<lagerort;
            cout<<"\nsind "<< b <<" Artikel verbucht.";
            cout<<"\n(w)eiter: ";
            cin>>w;
            }
            while (w == 'w');
            loop();
          }
          
          
          
          
          void inventur()
          {
          int anbe;
          system("cls");
          cout<<"Inventur\n\n";
          do {
          system("cls");
           randomize();
           anbe=random (100);
          cout<<"Bitte geben Sie \nden Bestand aus  \ndem Fach "<< anbe <<" ein: ";cin>>inventu; cout<<"Stück.";
          }
          while (inventu != 0);
          loop();
          }
          
          
          //_______________________________________________________
          
          void voce()
          {
          char auftra[1000];
          system("cls");
          cout<<"@Bitte geben Sie ihre\nAuftragsnummer ein:#";
          cout<<"\nAuftragsnummer: ";
          gets(auftra);
          if (auftra!="")
            { spr1();  }
            else
            loop();
          }
          
          void spr1()
          {
          sp1();
          }
          
          void sp1()
          {
           do {
           system("cls");
           randomize();
           f=random (100);
           r=random (100);
           a=random (100);
              cout<<"@Gehen Sie bitte zum Regal   "<< r<<"#\n";
              cout<<"@Fach   "<< f<<"#\n";
              cout<<"@ und nehmen Sie"<< a<<"Stück.#";
              do {
          //    system("cls");
              cout<<"@Bitte geben Sie zuerst die Prüfnummer ein, die an dem Regal steht.#";
          //    system("cls");
              cout<<"\n\nPrüfziffer: ";cin>>p;
               }
               while (p!=17);
              cout<<"@Bitte sagen Sie die Anzahl  und zum bestätigen der Eingabe OK.#";
              cout<<a;
              cout<<"\nAnzahl: ";cin>>wa ;
              }
            while (wa == a);
            do {
            system("cls");
            cout<<"@Ihre Angabe war falsch bitte wiederholen Sie die Anzahl erneut und bestätigen Sie ihre Eingabe mit OK.#";
            cout<<"@Anzahl"<< a<<"#";
            cout<<"Sollwert: "<<a;
            cout<<"\nAnzahl: ";cin>>wa ;
            if (wa!=a)
            nichtmerhda();
            }
            while (wa != a);
            voce();
          }
          
          void nichtmerhda()
          {
          cout<<"@Mindermenge erkannt und notiert. Neuer Stand 0#";
          sp1();
          }
          Windows Mobile Tools

          Comment


          • #6
            Und was ist die Frage?
            Christian

            Comment


            • #7
              Originally posted by Christian Marquardt View Post
              Und was ist die Frage?
              ich möchte halt nen form erstellen wo ich zb durch ein edit die Parameter für

              zB.
              gets(auftra);
              cin>>p;
              eingeben kann...

              dh in dem form möchte ich zb für auftra 1903 eingeben und in der console sollte das dann als Parameter gesetzt werden...
              Windows Mobile Tools

              Comment


              • #8
                Irgendwie drehen wir uns im Kreis:

                Das ist deine Frage:

                Wie kann ich sowas bewerkstelligen? Wie bekommt meine Konsolenanwendung die Parameter?
                Antwort: über die Aufrufparameter

                Und wenn dein Programm text.exe ist, dann wird es mit

                text.exe blabla

                von dem Guiprogramm gestartet. Dann kannst du - wenn du dich entschließt den Programm mit einer sauberen main-Routine zu versehen - blabla in dem Konsolenprogramm mittels der Aufrufparamter auslesen und weiterverarbeiten
                Christian

                Comment


                • #9
                  Originally posted by Christian Marquardt View Post
                  Irgendwie drehen wir uns im Kreis:

                  Das ist deine Frage:



                  Antwort: über die Aufrufparameter

                  Und wenn dein Programm text.exe ist, dann wird es mit

                  text.exe blabla

                  von dem Guiprogramm gestartet. Dann kannst du - wenn du dich entschließt den Programm mit einer sauberen main-Routine zu versehen - blabla in dem Konsolenprogramm mittels der Aufrufparamter auslesen und weiterverarbeiten
                  Mhh haste nen Beispiel??? ich raff leider null... wie so oft....

                  also das consolenprog läuft halt aufm terminal und nun will ich aufm rechner in der GUI die Parameter engeben die das conolenprog bearbeitet...
                  Windows Mobile Tools

                  Comment


                  • #10
                    http://wwwx.cs.unc.edu/~sparkst/howto/cpp_main.php

                    also das consolenprog läuft halt aufm terminal und nun will ich aufm rechner in der GUI die Parameter engeben die das conolenprog bearbeitet...
                    Das ist unverständlich. Welche Verbindung besteht den zwischen dem Rechner und was auch immer? Terminal?
                    Christian

                    Comment


                    • #11
                      okay ... danke ich blick da zwar noch net durch wie ich werte übergebe aber ich schau mal auf dem link....
                      Windows Mobile Tools

                      Comment


                      • #12
                        iwi ist da nix von übergabe werte aus ner gui... die sachen kenn ich die da erklärt werden.... aber die lösung ist es nicht für mein Prob...schade...
                        Windows Mobile Tools

                        Comment


                        • #13
                          ???
                          Nun, wenn allg. erprobte Verfahren nichts für dich sind, musst du weiter suchen
                          Christian

                          Comment


                          • #14
                            hab ich ja nicht gesagt... ich versteh einfach nicht wie ich die GUI in die Console bekomme... Mher nicht...

                            Muss net böse sein!
                            Windows Mobile Tools

                            Comment


                            • #15
                              Nochmal von vorne:

                              Wie ist der Aufbau?


                              PC mit GUI-Programm -> Konsolenprogramm -> zu einem Terminal Telnetport (Das Guiprogramm & das Konsolenprogramm laufen auf einer Maschine?)

                              oder

                              PC mit GUI-Programm -> zu einem Terminal Telnetport -> Konsolenprogramm (Das Guiprogramm & das Konsolenprogramm laufen auf verschiedenen Maschinen über Telnetport)
                              Christian

                              Comment

                              Working...
                              X