Brauche hilfe

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

  • Brauche hilfe

    Hi Leute,

    ich (und mein Sohn, wer auf der FOS ist) haben probleme mit Delphi. Es ist so, ich habe folgenden code in Delphi geschreiben und bekomme eine Menge compiler errors und komme einfach nicht weiter:

    Quellcode

    1. var
    2. listpreis, umsatzsteuer, rabatt, skonto, porto, netto_aus, ziel_aus, bar_aus, bezug_aus :real;
    3. begin
    4. listpreis:=StrToFloat(edit1.text);
    5. umsatzsteuer:=StrToFloat(edit2.text);
    6. rabtt:=StrToFloat(edit3.text);
    7. skonto:=StrToFloat(edit4.text);
    8. porto:=StrToFloat(edit5.text);
    9. netto_aus:=listpreis-(listpreis*umsatzsteuer/100);
    10. ziel_aus:=netto_aus-(netto_aus*rabatt/100);
    11. bar_aus:=ziel_aus-(ziel_aus*skonto/100);
    12. bezug_aus:=bar_aus+porto;
    13. Panel1.Caption:=FloatToStr(netto_aus,Arial,12):
    14. Panel2.Caption:=FloatToStr(ziel_aus,Arial,12):
    15. Panel3.Caption:=FloatToStr(bar_aus,Arial,12):
    16. Panel4.Caption:=FloatToStr(bezug_aus,Arial,12):
    17. end.
    Alles anzeigen


    Ganz einfache Berechnung wie man sieht. Hier sind die compiler errors:

    Quellcode

    1. [Fehler] handles_kalkulation.pas(47): Undefinierter Bezeichner: 'edit1'
    2. [Fehler] handles_kalkulation.pas(48): Operator oder Semikolon fehlt
    3. [Fehler] handles_kalkulation.pas(48): Undefinierter Bezeichner: 'edit2'
    4. [Fehler] handles_kalkulation.pas(49): Operator oder Semikolon fehlt
    5. [Fehler] handles_kalkulation.pas(49): Undefinierter Bezeichner: 'edit3'
    6. [Fehler] handles_kalkulation.pas(50): Operator oder Semikolon fehlt
    7. [Fehler] handles_kalkulation.pas(50): Undefinierter Bezeichner: 'edit4'
    8. [Fehler] handles_kalkulation.pas(51): Operator oder Semikolon fehlt
    9. [Fehler] handles_kalkulation.pas(51): Undefinierter Bezeichner: 'edit5'
    10. [Fehler] handles_kalkulation.pas(53): Operator oder Semikolon fehlt
    11. [Fehler] handles_kalkulation.pas(58): Undefinierter Bezeichner: 'Panel1'
    12. [Fehler] handles_kalkulation.pas(58): Zu viele Parameter
    13. [Fehler] handles_kalkulation.pas(59): Operator ist auf diesen Operandentyp nicht anwendbar
    14. [Fehler] handles_kalkulation.pas(59): Zu viele Parameter
    15. [Fehler] handles_kalkulation.pas(60): Operator ist auf diesen Operandentyp nicht anwendbar
    16. [Fehler] handles_kalkulation.pas(60): Zu viele Parameter
    17. [Fehler] handles_kalkulation.pas(61): Operator ist auf diesen Operandentyp nicht anwendbar
    18. [Fehler] handles_kalkulation.pas(61): Zu viele Parameter
    19. [Fehler] handles_kalkulation.pas(63): Operator ist auf diesen Operandentyp nicht anwendbar
    20. [Fataler Fehler] Project1.dpr(5): Verwendete Unit 'handles_kalkulation.pas' kann nicht compiliert werden
    Alles anzeigen


    Zur info, Delphi 5.0 kommt zur einsatz von der Schule. Wie gesagt, ich habe in der Delphi Hilfe nachgeschaut und finde doch keine hilfe. Vieleicht kann jemanden mir ein parr Tips order hinweise!!

    Wäre sehr nett!!

    Gruß
    Ron
  • Hi

    also es wäre schön wenn du etwas mehr von deinem Code Posten könntest... schon weil hier nicht wirklich klar ersichtlich ist in welcher zeile die fehler passieren... ist ja möglich das vorher schoneinmal die bezeichner vorkommen und der fehler da passiert. wenn du den code postest benutze bitte das syntaxhighlighting... sieht besser aus und liest sich vor allem ohne smilies besser -.-


    so aus dem stehgreif würde ich mal sagen das er die bezeichnung der textfelder nicht finden kann... habt ihr die evtl im nachhinein geändert? ich meine dabei edit1, edit2 usw...


    wie gesagt... "etwas" mehr code wäre nicht verkehrt um den fehler wirklich effektiv finden zu können....


    mfg BendIt
    .:Reden Ist Schweigen und Silber Ist Gold:.

    real programmers don't comment their code: if it was hard to write, it should be hard to read!
  • Hi DendIT,

    und danke für die Schnelle Hilfe!!

    Unten ist der Ganze Code aus dem Editor. Wenn Du noch was brauchst sagt bescheid.

    Gruß
    Ron


    Quellcode

    1. unit handles_kalkulation;
    2. interface
    3. uses
    4. Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
    5. StdCtrls, ExtCtrls;
    6. type
    7. TForm1 = class(TForm)
    8. Edit1: TEdit;
    9. Label1: TLabel;
    10. Edit2: TEdit;
    11. Edit3: TEdit;
    12. Edit4: TEdit;
    13. Edit5: TEdit;
    14. Label2: TLabel;
    15. Label3: TLabel;
    16. Label4: TLabel;
    17. Label5: TLabel;
    18. Panel1: TPanel;
    19. Label6: TLabel;
    20. Panel2: TPanel;
    21. Panel3: TPanel;
    22. Panel4: TPanel;
    23. Label7: TLabel;
    24. Label8: TLabel;
    25. Label9: TLabel;
    26. private
    27. { Private-Deklarationen }
    28. public
    29. { Public-Deklarationen }
    30. end;
    31. var
    32. Form1: TForm1;
    33. implementation
    34. {$R *.DFM}
    35. var
    36. listpreis, umsatzsteuer, rabatt, skonto, porto, netto_aus, ziel_aus, bar_aus, bezug_aus :real;
    37. begin
    38. listpreis:=StrToFloat(edit1.text);
    39. umsatzsteuer:=StrToFloat(edit2.text);
    40. rabtt:=StrToFloat(edit3.text);
    41. skonto:=StrToFloat(edit4.text);
    42. porto:=StrToFloat(edit5.text);
    43. netto_aus:=listpreis-(listpreis*umsatzsteuer/100);
    44. ziel_aus:=netto_aus-(netto_aus*rabatt/100);
    45. bar_aus:=ziel_aus-(ziel_aus*skonto/100);
    46. bezug_aus:=bar_aus+porto;
    47. Panel1.Caption:=FloatToStr(netto_aus,Arial,12):
    48. Panel2.Caption:=FloatToStr(ziel_aus,Arial,12):
    49. Panel3.Caption:=FloatToStr(bar_aus,Arial,12):
    50. Panel4.Caption:=FloatToStr(bezug_aus,Arial,12):
    51. end.
    Alles anzeigen
  • Hi,

    also ich nehme mal an das du/ihr die komponennten auf einer form platziert habt?

    Ich geh auch mal weiter davon aus das der code nicht per Copy&Paste von irgendwo her stammt.

    Die Fehler die der compiler meldet führen darauf zurück das es auf der form, falls es denn eine gibt, weder edit felder noch pannels gibt.


    D.h. entweder das die edit felder und pannels zwar existieren, aber einen anderen namen haben

    ODER

    das die felder und pannels einfach nicht existieren

    ... also form prüfen bzw anlegen ;)

    dann sollte es funzn

    Mfg BendIt
    .:Reden Ist Schweigen und Silber Ist Gold:.

    real programmers don't comment their code: if it was hard to write, it should be hard to read!
  • Der Code wird so oder so nicht funktionieren. Delphi ist eventgesteuert, was aber in dem Code vollkommen ignoriert wird. Zu Ausführungszeit des Codes existieren die Komponenten nicht zwingend und ich kann garantieren, dass es zu Speicherschutzverletzungen oder Runtime-Errors kommt. Ich würde empfehlen das ganze Eventgesteuert zu machen.
    ~ mfg SeBa

    Ich beantworte keine PMs zu Computer-/Programmierproblemen. Bitte wendet euch an das entsprechende Forum.

    [Blockierte Grafik: http://i.creativecommons.org/l/by-sa/3.0/80x15.png]
  • "SeBa" schrieb:

    Der Code wird so oder so nicht funktionieren. Delphi ist eventgesteuert, was aber in dem Code vollkommen ignoriert wird. Zu Ausführungszeit des Codes existieren die Komponenten nicht zwingend und ich kann garantieren, dass es zu Speicherschutzverletzungen oder Runtime-Errors kommt. Ich würde empfehlen das ganze Eventgesteuert zu machen.


    Hi SeBa,

    habe ich genau so gedacht, aber der Lehrer von meinen Sohn hat gesagt das das Programmchen genau so geschrieben werden muss. Wie im eingangs message gesagt, habe ich keine Ähnung von Delphi. Vorschläge sind Wilkommen!! :-))

    Thanks for the Feedback.

    Gruß
    Ron
  • Der Lehrer schein inkompetent, er vermischt imperative Programmierung mit den objektorientierten Konzepten der VCL von Delphi. Der Code, der dann rauskommt ist ein Tritt vors Schienbein, die Zeiten in denen beim Programmieren erlaubt ist was funktioniert sind längst vorbei :!:

    Mein Vorschlag: Klatsch die ganzen Komponenten die in der Deklaration von Form1 stehen auf deine Form und guck dir die Events der Form1 an. Ich weiß nicht mehr genau welches dafür ging, aber versuch mal OnCreate oder so. Da kannste den Code dann reinkopieren.
    ~ mfg SeBa

    Ich beantworte keine PMs zu Computer-/Programmierproblemen. Bitte wendet euch an das entsprechende Forum.

    [Blockierte Grafik: http://i.creativecommons.org/l/by-sa/3.0/80x15.png]
  • SeBa schrieb:

    Der Lehrer schein inkompetent, er vermischt imperative Programmierung mit den objektorientierten Konzepten der VCL von Delphi. Der Code, der dann rauskommt ist ein Tritt vors Schienbein, die Zeiten in denen beim Programmieren erlaubt ist was funktioniert sind längst vorbei :!:

    Mein Vorschlag: Klatsch die ganzen Komponenten die in der Deklaration von Form1 stehen auf deine Form und guck dir die Events der Form1 an. Ich weiß nicht mehr genau welches dafür ging, aber versuch mal OnCreate oder so. Da kannste den Code dann reinkopieren.


    Hi und Danke nochmals für the infos!! :)

    Ich bin nur froh das mein Sohn erst im 10. Klasse ist und nicht auf der Uni.....


    Gruß
    Ron