Projekt Problem(e)

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Projekt Problem(e)

    Hallo ich habe folgendes Problem.

    Ich arbeite gerade an einem Schulprojekt (Haben zwei Tage zeit, eine rbereits verstrichen)

    Ich schreibe ein Programm für ein Ticketautomat, die Preiserfassung erfolgt nach eingabe des Startpunktes und des Endpunktes, daraus wird eine Killometer Zahl berechnet die die Preistufe vorgibt.

    [Verwendetes Programm c++ builder 5]

    Das Programm soll nach folgendem ablauf laufen:
    +++++++++++++++++++++++++++++++++++++++
    Form1
    +++++++++++++++++++++++++++++++++++++++

    1. Eingabe des Startortes [Dropdownmenü soll hilfe leisten]
    2. Eingabe der Starthaltestelle [ebenfalls dropdownmenü]
    3. Eingabe des Zielortes [dropdown]
    4. Eingabe der Zeilhaltestelle [dropdwon]

    -> nach dem die letzte Eingabe getätigt wurde, wird mittels ein Button berechnen, die Preisstufe berechnet.

    Die Killometerzahl wird mittels pythagoras Wurzel aus( [X1-X2]²+[Y1-Y2]²).
    Daraus resultiert, mittels if else anweisung die Preistufe mit dem Pauschalpreis.

    Diese beiden Werte werden mittels zweier Labels ausgegeben.
    (Hier wird erst nur die Preistsufe ausgegeben, da das ticket noch bestimmt werden muß)

    Des weiteren gibt es auf der ersten Form ein button für den Verwalter der Software, zur hinzufügung neuer Haltestellen und Orte.

    (Weiter buttons natürlich, bestätigung, abbruch, schließen (da es ja eine simulation ist), hilfe)
    +++++++++++++++++++++++++++++++++++

    Form2 -> Haltestellen hinzufügen !PROBLEM!
    ********************************************
    Dieses Formular sieht folgender maßen aus:

    1 Editfeld zur eingabe des Ortes
    1 Editfeld zur eingabe der Haltestelle
    1 Editfeld zur eingabe der X-Koordinate
    1 Editfeld zur eingabe der Y-Koordinate

    Button -> OK; Abbruch.

    Nun sollen diese Daten natürlich in einer Datei gespeichert werden.

    1. Problem: Ich war jetzt schon 5 std. des Projektes damit beschäftigt, es zu VERSUCHEN diese Daten in eine *.Txt Datei zu Speichern.

    Ich habe es zwar nach ca 20min geschafft daten und Texte zu Speichern, jedoch schaffe ich es nicht die Daten die ich Speichern will zu Speichern.
    Nähmlich mit folgendem Code

    #include <fstream>
    using namespace std;

    fstream f;
    f.open("test.txt", ios::out);
    f << EditfeldStartOrt->Text << endl;
    f.close();
    }


    Bekomme ich die Fehlermeldung, das der compiler EditfeldStartOrt nicht an nimmt da es sich um ein AnsiString handelt.

    Nach weiterer suche im internet habe ich gefunden das EditfeldStartOrt erst in ein charackter umgewandelt werden müsse.

    Folgender code:


    #include <fstream>
    using namespace std;

    fstream f;
    f.open("test.txt", ios::out);
    f << (char*) (EditfeldStartOrt->Text) << endl;
    f.close();
    }


    Nun bekomme ich jedoch die Fehlermeldung, das Borland diesen AnsiString nicht in ein charackter umwandeln kann...

    Ich habe Stunden lang rumprobiert die verschiedensten Codes ausprobiert.
    (Ich habe den obriegen genannt, da es in vielen Foren der Lösungscode war, der auch 100% funktionierte.. nur bei mir nicht..
    Nur wenn ich in der Konsole selber ein Text oder eine Variable, aus der Konsole speichern wollte, nur nicht von der graphsichenoberfläche aus))

    Diese Funktion ist aber die wichtigste des Programmes, den in den Dropdownmenüs sollen später die Orte die in einer Datei abgespeichert sind zur auswahl stehen, das selbe mit den Haltestellen.

    [Dazu muß ich sagen das wir bis jetzt fast nur konsolenprogrammierung gemacht haben und nie irgenwelche Dateingespeichert oder eingelesen haben, auch mit den Dropdownmenü habe ich keine erfahrung.]

    Nun wie bekomme ich es hin, eine eingabe vom Editfeld abzuspeichern und diese später in das dafür vorgesehende Dropdownmenü zur auswahl zu haben??

    Desweiteren gibt es eine Möglichkeit die Daten in gruppe abzuspeichern?
    Denn es soll nach eingabe des Ortes nur noch die Haltestellen dieses Ortes zur verfügung stehen und wie Speichert mann die Haltestelle so ab das die Koordinaten dieser auch eindeutig zu dieser Haltestellen zugeordnet bleiben.

    Ich hätte noch eine Frage, nach dem man die eingaben und die daraus Resultierenden Preisstufe mittels eines bbok-buttons bestätigt, folgt Form3.
    Hier steht mittels einer GroupBox 6 verschiedene Tickets zur auswahl.
    Nur hier habe ich das Problem, das die Groupbox die 6 Radiobuttons untereinander anordnet, wobei zwei dreier Reihen angebrachter wären.
    Oder muß ich hier ein Groupboxpanel nehmen und die Radiobutton selber anordnen?

    Ich hoffe Sie können mir Helfen, auch noch nach den morgigen Tag.
    Dann endet zwar das Projekt, das Programm möchte ich dennoch fertigstellen.

    mfg TheJabba
  • Hallo, wollte mich mal wieder zu meinem Projekt melden.

    Nach weiterer suche im internet habe ich gefunden das EditfeldStartOrt erst in ein charackter umgewandelt werden müsse.

    Folgender code:


    #include <fstream>
    using namespace std;

    fstream f;
    f.open("test.txt", ios::out);
    f << (char*) (EditfeldStartOrt->Text) << endl;
    f.close();
    }

    Nun bekomme ich jedoch die Fehlermeldung, das Borland diesen AnsiString nicht in ein charackter umwandeln kann...


    Ich habe es zwar nicht geschaft den String in ein char umzuwandeln, dies liegt wahrscheinlich an Borland Builder.

    Aber mit folgendem Code ist es möglich einen String abzuspeichern.

    TStringList *list = new TStringList();
    list->LoadFromFile("Dateiname.txt");
    list->Append(Editfeld->Text); // Append -> An die Liste anhängen.
    list->SaveToFile("Dateiname.txt");
    delete list;


    Desweiteren gibt es eine Möglichkeit die Daten in gruppe abzuspeichern?


    Auszug aus meinem Programm:

    list->Append(Aeort->Text+ ";" + Aehalt->Text+ ";" + aex->Text+ ";" + aey->Text+ ";");

    Durchs ; werden die einzelnen Daten des Datensatzes von einander getrennt.

    Nur hier habe ich das Problem, das die Groupbox die 6 Radiobuttons untereinander anordnet, wobei zwei dreier Reihen angebrachter wären.
    Oder muß ich hier ein Groupboxpanel nehmen und die Radiobutton selber anordnen?


    Habe nach längerem rumprobieren die Radiobuttons selber angeordnet in einer Groupbox.