Wert eines Buttons in einem textfeld anzeigen
-
Also ich habe folgendes Problem
Ich will einen Parkautomat mit C++ programmieren.
Jetzt habe ich einn Button mit dem ich die Parkzeit erhöhen kann und einen mit dem ich die Parkzeit verringern kann. Wie lang die atuelle Prkdauer ist soll in einem Textfeld angegeben werden
Damit Herr Meier sich nicht merken muß wie oft er schon gedrückt hat *g*
Außerdem benötige ich zwei Radiobuttons weil dieser Automat mit einer Geldkarte gefüttert wird. Nun muß angegeben werden ob der Betrag ausreicht oder nicht und da der Betrag ja nicht gleichzeitig ausreichen und nicht ausreichen kann sollen die nicht gleichzeitig aktiviert sein können.
Wer kann mir helfen??
-
Wer kann mir helfen??
Die BCB-Hilfe!
Lerne erst einmal die Standard Komponenten kennen, dann ist die Lösung ganz leicht.
-
Die Standardkomponenten kenne ih schon, komme aber nicht auf die Lösung sonst würde ich nicht fragen *g*
Nix für ungut. Für weiter hilfreiche(re) Tipps wäre ich dankbar
-
Kennst du TLabel?
Kennst du IntToStr und StrToInt?
UND Kennst du Radiogroup?
-
Zu den RadioButtons geht es hier weiter, denn die Faustregel lautet: ein Thema pro Thread, ein Thread pro Thema.
-
Kann mir mal jemand ein Beispiel geben??
Ich bekomm es nicht hin
-
Mann, wenn du mehrere TRadioButtons untereinanderscheibst, kannst du standardmäßig immernur eine davon auswählen... TRadioGroup ist dazu da, dass wenn du mehrere seolche Einstellungen hast, wo man immer nur eine auswählen kann, dass diese Gruppen dann auch auseinander gehalten werden. Da du aber bloß 2 solche RadioButtons hast, brauchst du diese nur auf die Form zu knallen.
-
Windoof schrieb:
[...voll am Thema vorbei...]
a)
Jansen schrieb:
Zu den RadioButtons geht es hier weiter, denn die Faustregel lautet: ein Thema pro Thread, ein Thread pro Thema.
b) Inwiefern liefert dein Kommentar ergänzende Informationen zu dem was Jansen in oben genanntem Thread bereits geäussert hat?
Wenn man selber schon den Thread nicht liest, sollte man vielleicht den Kommentar sparen. Zumal der Kommentar den dein Posting betrifft absolut nicht zum Thema "Wert eines Buttons in einem textfeld anzeigen" gehört.
-junix
-
falke_21 schrieb:
Kann mir mal jemand ein Beispiel geben??
Ich bekomm es nicht hin
Wenn du Anfänger in C++ bist, warum fängst du nicht mit "Hello World" an?
Du fragst nach der einfachsten Sache e.g.
Eine globale Integer Variable mit dem Startwert 0,
bei klick auf Button "aufzählen" diese Variable um eins erhöhen,
und mittels IntToStr in einem Label oder Edit oder so ausgeben.
Das gleiche mit dem Button "abzählen", nur das dabei um eins erniedrigt wird.
-
aber wenn ich falke_21 richtig verstanden habe, was jeder andere auch tun könnte wenn er seine Threads liest. Möchte er mittlerweile ein Beispiel gezeigt bekommen, und keine dummen Sprüche. Ich mein ich weiß ja das ihr alle nur helfen wollt aber erklärt mir mal was das Programm "hello World" mit der Programmierung mit ner Windowsähnlichen Oberfläche zu tun hat. Ich mein er benutzt doch Buttons wenn ich das richtig verstanden habe.
Geht das nicht irgendwie mit
Button -> TEdit : Text
Ich mein ich hab da ja nicht so die Ahnung von aber wenn es so ganz falsch ist versucht es doch mal mit einem einfachen Beispiel in form eines Codes.
-
Ich mein ich hab da ja nicht so die Ahnung von
Scheinbar noch weniger als der Falke...
-
Der Sinn dieses Forums ist es nicht den Leuten fertigen Code zum Kopieren
zu geben, den sie dann übernehmen ohne ihn zu verstehen.Der Sinn ist es den Leuten unter die Arme zu greifen um der Lösung näher
zu kommen. Hier wurden Komponenten auf die Form gezogen die Später ein
Programm darstellen und der Code dazu muß selbst geschrieben werden, das
macht der BCB nicht.aber erklärt mir mal was das Programm "hello World" mit der Programmierung mit ner Windowsähnlichen Oberfläche zu tun hat. Ich mein er benutzt doch Buttons wenn ich das richtig verstanden habe.
Wie soll ich das Verstehen?
Wer den BCB hat und Buttons benutzt braucht keinen C++ Code mehr zu schreiben?
Warum heißt er dann C++Builder?Der BCB stellt Komponenten zur Verfühgung, wie Buttons etc. das sind Klassen,
wie andere Klassen in C++ auch (mit dem Unterschied das diese in ObjectPascal
geschrieben sind) um diese Klassen instanzieren zieht man sie auf die Form,
aber um diese zu Verwenden muß mann in C++ den entsprechenden Code
schreiben.class Zaehlwerk { private: int Zaehler; public: Zaehlwerk() { Zaehler = 0; } Aufzaehlen(int a) { Zaehler += a; } Abzaehlen(int b) { Zaehler -= b; } int AktuelleZahl() { return Zaehler; } }; void __fastcall TForm1::Button1Click(TObject *Sender) { Zaehlwerk->Aufzaehlen(1); Edit1->Text = IntToStr(Zaehlwerk->AktuelleZahl()); } //--------------------------------------------------------------------------- void __fastcall TForm1::Button2Click(TObject *Sender) { Zaehlwerk->Abzaehlen(1); Edit1->Text = IntToStr(Zaehlwerk->AktuelleZahl()); } //---------------------------------------------------------------------------
Und wenn man jetzt nicht Versteht was da passiert, bzw. gemacht wurde, dann
sollte man (in jedem Fall) mit "Hello World" anfangen!gruß Micha
-
Ich weiß aber das es eine Möglichkeit gibt das so in der Art zu mchen denn ich habe es sleber schon einmal gemacht. Das ist leider nur zu lange her als das ich noch genau weiß wie das geschrieben wird.
Aber wenn es so falsch ist. Schreibt doch endlich mal ein Beispiel oder ist das ein Forum wo dümme Sprüche abgegebn werden anstatt zu helfen *g*
-
Wie wär's mit 3 mal "void"?
-
.. 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 Fallvoid __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 FehlermeldungNö.
-
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 machenParkautomat *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;