BCB Hilfe
-
Hallo Fat-Tiger,
das ist recht einfach der Button stellt dir bereits das Gerüst für ein Handle zur Verfügung wenn du einen doppel-Click auf den Button in der Form machst. Das Handle füllst mit dem Code:void __fastcall TForm1::Button1Click(TObject *Sender) { Label1->Caption = Edit1->Text; }Viel Erfolg
Evi48
-
Jo, thank you!
Klappt und was noch ne frage, könntest du das bitte was erläutern damit ich den zusammen hang verstehe?
Noch was, wenn ich variablen definieren möchte hat mir das buch folgendes erzählt: int x; ,doubel long x; oder long x;.
wo muss ich das beim BCB reinschreiben, das Buch hat mir also auch erzählt das die Variabeln einfach im Sourcecode iregendwo eintragen kann.würde mich sehr über hilfe freuen
-
Hallo
Genau genommen nicht irgendwo. Sondern bevor sie zum ersten mal gebraucht werden.
Ums mal einfach zu machen, hier ein Vergleich :#include <vcl.h> ... int Global; // globale Variable, gilt für alle nachfolgenden Funktionen int Func() { int Lokal; // lokale Variable, gilt nur in dieser Funktion }bis bald
akari
-
So ok verstanden,
aber wenn ich z.B ein Edit feld als Vari. angeben möchte heißt es dann einfach:
int Edit1;
nehmen wir an ich mache einen Taschenrechner der Plus rechnet:
doubel long Edit1, Edit2;
Label1->Caption = Edit1+Edit2;
Nemhe ich dann mal an "weiß nicht ob es richtig ist" also könnte ich das so einfach machen.
Nochmal vielen vielen Dank an euch das ihr mit mir so viel geduld habt.
-
Hallo,
nein das geht so nicht. Ein Edit-Feld ist eine Klasse/Komponente "TEdit" und es müsste dann heissen TEdit *EditDas macht aber der BCB für dich wenn du zur Entwicklungszeit aus der Tool-Bar das Symbol für ein Edit-Feld in deine Form ziehst. Das gleiche gilt für Button, Label usw.
Evi48
-
Hallo
doubel long Edit1, Edit2; Label1->Caption = Edit1+Edit2;ja, das ist ok. Allerdings solltest du besser im Echtfall aussagekräftigere Variablennamen wählen.
aber wenn ich z.B ein Edit feld als Vari. angeben möchte heißt es dann einfach:
int Edit1;Bitte bring Edit-Controls und Integer-Variablen nicht durcheinander. Dein Beispiel ist letzteres.
bis bald
akari
-
Hallo,
ein kleines Bespiel sieht wie nachstehend aus
unit1.hclass TForm1 : public TForm { __published: // Von der IDE verwaltete Komponenten TEdit *Edit1; TLabel *Label1; TButton *Button1; void __fastcall Button1Click(TObject *Sender); private: // Anwender-Deklarationen public: // Anwender-Deklarationen __fastcall TForm1(TComponent* Owner); };unit1.cpp
#include <vcl.h> #pragma hdrstop #include "Unit1.h" //--------------------------------------------------------------------------- #pragma package(smart_init) #pragma resource "*.dfm" TForm1 *Form1; //--------------------------------------------------------------------------- __fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { } //--------------------------------------------------------------------------- void __fastcall TForm1::Button1Click(TObject *Sender) { Label1->Caption = Edit1->Text; // NUR DIESE ZEILE MUSST DU SELBER // EINGEBEN. ALLES ANDERE MACHT BCB }Evi48
-
Ok, akari ich habe den Sourcecode einfach mal übernommen aber wenn ich dann auf den Button Drücke nachdem ich die Vari. eigeben habe kommt 1179173 dieses in das Label.
So ich habe Double long genommen weil der werte Berreich größer, int würde aber völlig ausreichen "richtig"!
Ich muss doch die Edit Felder als Variable angeben, wenn mich mein Verstand noch nicht verlassen hat.
dann in der Zeile:
Label1->Caption = Edit1+Edit2; // Label->Caption heißt?? Edit1+Edit2 also ich würde sagen das man noch eine dritte Varibale dazuügt wo das Ergebnis gespeichert wird und dann an das Label gesendet wird.Wünsche mir Verbesserungs vorschläge / Kritik ist erwünscht .... thx thx
-
Hallo
das du einen Mondwert rausbekommst, ist klar. denn du must ja erstmal einen relevanten Wert in die Integers reinschreiben.
Nehmen wir mal an, du hast zwei Eingabe-Edits, ein Ausgabe-Edit und einen Button der die Werte addieren soll. Dann muß in den Button als Quellcodeint Wert1, Wert2; // Zwischenspeicher, um den Code eindeutiger zu machen // Erste Zahl aus Eingabe holen, wenn Umwandlung in Zahl nicht möglich, Standardwert 0 benutzen Wert1 = StrToIntDef(Eingabe1->Text, 0); Wert2 = StrToIntDef(Eingabe2->Text, 0); // Zweite Zahl holen Ausgabe->Text = "Ergebnis : " + IntToStr(Wert1 + Wert2); // Ausgabebis bald
akari
-
Hallo Fat-Tiger,
ich kann mich eigentlich nur BigNeal anschliessen und möchte Dir empfehlen, Dir ein C++-Grundlagenbuch zuzulegen und / oder ein paar Tutorials durchzuarbeiten. Das wird Dich ein paar Monate beschäftigen.
An die GUI-Programmierung solltest Du dich jetzt noch nicht wagen. Dafür ist es offensichtlich zu früh.