AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Delphi Rechnung mit Label

Ein Thema von Hanswurst1 · begonnen am 2. Mai 2013 · letzter Beitrag vom 4. Mai 2013
Antwort Antwort
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.228 Beiträge
 
Delphi 10.4 Sydney
 
#1

AW: Delphi Rechnung mit Label

  Alt 3. Mai 2013, 10:04
Ja danke euch jetzt ist es mir klarer geworden wie Delphi funktioniert das wird mir weiterhelfen. Dankeschön
Kann es sein das du schon mit Access/VBA gearbeitet hast? AFAIK gibt es hier diesen Automatismus das bei Zuweisung auf das GUI-Label automatisch der Wert ins Caption-Property geschrieben wird.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Hanswurst1
(Gast)

n/a Beiträge
 
#2

AW: Delphi Rechnung mit Label

  Alt 3. Mai 2013, 16:07
Ja danke euch jetzt ist es mir klarer geworden wie Delphi funktioniert das wird mir weiterhelfen. Dankeschön
Kann es sein das du schon mit Access/VBA gearbeitet hast? AFAIK gibt es hier diesen Automatismus das bei Zuweisung auf das GUI-Label automatisch der Wert ins Caption-Property geschrieben wird.
Ja ich habe schon etwas mit Access gearbeitet und da war das meines wissen auch so. Aber mit Delphi bin ich totaler Anfänger. Ich habe praktisch nur ein Crashkurs in der Schule gehabt und soll jetzt schon ein projekt machen.
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.665 Beiträge
 
Delphi 12 Athens
 
#3

AW: Delphi Rechnung mit Label

  Alt 3. Mai 2013, 17:28
Markus (mkinzler) hat es ja bereits angedeutet: Du solltest es vermeiden, Anzeigekomponenten als Datenspeicher zu missbrauchen. Da Du ja etwas berechnen willst/musst, brauchst Du auch Variablen bzw. Felder von entsprechenden Zahlentypen (z.B. Integer für ganze Zahlen oder double für Gleitkommazahlen). Die Komponenten dienen dann als Schnittstelle zwischen Benutzer und diesen Variablen/Feldern. In größeren Projekten würde ich dazu raten, den ganzen "Berechnungsskram" in eine eigene Klasse auszulagern, aber das ist in diesem Fall wohl etwas oversized, und außerdem ist der "gemeine Delphi-Anfänger" (das ist nicht wertend gemeint) damit aller Wahrscheinlichkeit hoffnungslos überfordert. Ein einfaches Beispiel: ein Formular mit 2 Edits, einem Button und einem Label. In die Edits sollen jeweils Zahlen eingegeben werden, auf Button-Click soll die Summe dieser Zahlen im Label ausgegeben werden. Achtung: der folgende Code ist im Editor getippt und daher ungetestet. Außerdem habe ich auf jegliche Fehlerbehandlung verzichtet:
Delphi-Quellcode:
type
  TRechenForm = class(TForm)
    (* Edits für die Eingabe *)
    edtZahl1: TEdit;
    edtZahl2: TEdit;
    (* Button, der die Berechnung anstoßen soll *)
    btnRechne: TButton;
    (* Ausgabelabel *)
    lblErgebnis: TLabel;
    (* Ereignis, das bei Click des Buttons ausgelöst werden soll *)
    procedure btnRechneClick(Sender: TObject);
  private
    (* private Felder, mit denen gerechnet werden soll *)
    FZahl1: integer;
    FZahl2: integer;
    FErgebnis: integer;
    (* Deklaration der Rechenroutine *)
    procedure Rechne;
  end;

...

procedure TRechenForm.Rechne;
begin
  (* Berechnung *)
  Ergebnis := FZahl1 + FZahl2;
end;

procedure TRechenForm.btnRechneClick(Sender: TObject);
begin
  (* Umwandlung der Eingaben in Zahlen und Zuweisung an die Felder *)
  FZahl1 := StrToInt(edtZahl1.Text);
  FZahl2 := StrToInt(edtZahl2.Text);
  (* Berechnung aufrufen *)
  Rechne;
  (* Ausgabe des Ergebnisses, dabei Umwandlung von Zahl -> String *)
  lblErgebnis.Caption := IntToStr(FErgebnis);
end;
Dass da die Fehlerbehandlung fehlt, wirst Du merken, wenn Du die Edits leer lässt oder etwas anderes als Ziffern eingibst und dann auf den Button klickst. Ich hoffe, es hilft Dir trotzdem etwas weiter.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Hanswurst1
(Gast)

n/a Beiträge
 
#4

AW: Delphi Rechnung mit Label

  Alt 4. Mai 2013, 09:16
Zitat:
private
(* private Felder, mit denen gerechnet werden soll *)
FZahl1: integer;
FZahl2: integer;
FErgebnis: integer;
Wenn ich dich also richtig verstanden habe kann man unter private die Felder und Variablen zum rechnen auslagern und später wieder auf diese zugreifen.
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#5

AW: Delphi Rechnung mit Label

  Alt 4. Mai 2013, 10:04
Wenn ich dich also richtig verstanden habe kann man unter private die Felder und Variablen zum rechnen auslagern und später wieder auf diese zugreifen.
Nicht so ganz. Was unter Private definiert ist, ist nur innerhalb der Klasse sichtbar. Das hat mit "Auslagern" weniger zu tun, eher mit "Verstecken".

Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.665 Beiträge
 
Delphi 12 Athens
 
#6

AW: Delphi Rechnung mit Label

  Alt 4. Mai 2013, 10:05
Richtig, aber das kann nur die Klasse, zu der die Felder gehören. Es gibt zwar delphi-spezifische Ausnahmen, aber wir wollen das hier noch nicht näher vertiefen.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Hanswurst1
(Gast)

n/a Beiträge
 
#7

AW: Delphi Rechnung mit Label

  Alt 4. Mai 2013, 10:58
Aha Ok Dankeschön für eure Erklärungen und Hilfe, das hat mir sehr viel weiter geholfen.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:03 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz