Wert eines Buttons in einem textfeld anzeigen



  • .. die mir it ihren überaus nützlichen Tips zur Seite stande. Mein besonderer Dank geht an promicha der sich nach langem hin und her doch dazu bereit erklärt hat ein beispiel zu zeigen.

    Ich wußte nicht das ihr hier im forum schon an der Frage sehen könnt was es für ein Programm wird und von daher schon den Code schreiben könntet und mir von daher keine Beispiele geben könnt/wollt *g* Habe aber nie vorgehabt das Programm anhand von Copy und Paste zu schreiben.

    Sonst würd ich die Programmstellung nämlich unter Projekte posten und warten bis jemand was fertiges hat, und ich würd emir schon gar nicht den BCB kaufen.

    Thx an alle



  • ... die mir etwas einfacher erscheint

    Fände es gut wenn ihr mir sagen würdet ob es daran etwas auszusetzten gibt oder ob man das so machen kann.
    Funktionieren tut es auf jeden Fall

    void __fastcall TForm1::Button1Click(TObject *Sender)
    {
    Parkzeit = Parkzeit + Takt;
    Edit1 -> Text = Parkzeit;
    
    }
    //---------------------------------------------------------------------------
    
    void __fastcall TForm1::Button2Click(TObject *Sender)
    {
    Parkzeit = Parkzeit - Takt;
    Edit1 -> Text = Parkzeit;
    }
    

    Greetz



  • WebFritzi schrieb:

    Wie wär's mit 3 mal "void"?

    😃 in der Eile, wenn man schnell ein Roman schreibt?

    Also logisch, bitte void mit vor den Funktionen (in der Klasse) sonst giebts
    Fehlermeldungen.



  • Parkzeit = Parkzeit + Takt; 
    Edit1 -> Text = Parkzeit;
    

    Edit1->Text ist vom Typ "AnsiString"
    Parkzeit, denke ich mal "int"
    Da giebts ne Fehlermeldung
    Verwende IntToStr()



  • promicha schrieb:

    Edit1->Text ist vom Typ "AnsiString"
    Parkzeit, denke ich mal "int"
    Da giebts ne Fehlermeldung

    Nö.



  • Man lernt nie aus, Edit1->Text erwartet AnsiString nimmt aber auch
    Integer an.
    Ich gewöhne mir aber IntToStr() nicht ab, ich will mein Code ja noch
    lesen können und nicht raten ob ne Variable int oder AnsiString ist.



  • falke_21 schrieb:

    ... die mir etwas einfacher erscheint

    Fände es gut wenn ihr mir sagen würdet ob es daran etwas auszusetzten gibt oder ob man das so machen kann.
    Funktionieren tut es auf jeden Fall

    [code]void __fastcall TForm1::Button1Click(TObject *Sender)
    {
    Parkzeit = Parkzeit + Takt;
    Edit1 -> Text = Parkzeit;
    .....

    Kann man, ob man soll???

    Wenn dein Code umfangreicher wird verlierst du den Überblick, z.B.
    Parkzeit1, Parkzeit2 etc.
    Klassen behalten den Überblick und können auch woanders verwendet
    werden.
    Wenn du mehre Nutzer hast, kannst du z.B. so machen

    Parkautomat *Benutzer[Anzahl_Benutzer]; //die Klasse wäre Parkautomat
    for (int i;i<Anzahl_Benutzer;i++) {
        Benutzer[i] = new Parkautomat();
    }
    //und kannst dann z.B. so zugreifen:
    Benutze[3]->Parkzeit += Takt;
    


  • promicha schrieb:

    Man lernt nie aus, Edit1->Text erwartet AnsiString nimmt aber auch
    Integer an.
    Ich gewöhne mir aber IntToStr() nicht ab, ich will mein Code ja noch
    lesen können und nicht raten ob ne Variable int oder AnsiString ist.

    Find ich auch besser.


  • Mod

    Hallo

    besser waere am Variablennamen zu erkennen ob es ein Integer oder ....
    ist

    Mfg
    Klaus



  • Das ist Ansichtssache, lieber Klaus. 😉



  • @Klaus
    schreibst du:

    int int_wert_zum_aufzaehlen;
    ...
    Edit1->Text = int_wert_zum_aufzaehlen; //aha hier ist ein Integer
    

    ist dann nicht das:

    int Zaehler;
    ...
    Edit1->Text = IntToStr(Zaehler); //aha ein Integer ist es der zum String wird
    

    besser?

    Und "IntToStr()" bremst in diesen Moment auch nichts aus, den Edit1->Text
    ruft diese auf wenn ein int kommt, daher bleibt es gleich.



  • Nein, er meint sowas wie

    Edit1->Text = IntToStr(iParkzeit);
    


  • WebFritzi schrieb:

    Nein, er meint sowas wie

    Edit1->Text = IntToStr(iParkzeit);
    

    Ja gut sowas benutze ich öffters mal in Funktionen um das zuordnen zu können,
    ala:

    slDaten //StringList;
    sDaten //AnsiString;
    dtZeit // DateTime;
    iCount // integer;
    ... // usw.
    

    also ansich gar nicht so falsch, in meinen Augen, aber auf "IntToStr()"
    verzichte ich denoch nicht, ob ich es nun aufrufe oder ein property da
    ist es mir lieber ich mach es und sehe beim Code lesen sofort was los ist.


  • Mod

    Hallo

    um Verzicht auf IntToStr gieng es mir ueberhaupt nicht nur um "sprechende Variable" (siehe zB. iParkZeit)

    Jeder (fremde) kann sofort den Typ der Variablen erkennen

    MfG
    Klaus


Anmelden zum Antworten