AGB  ·  Datenschutz  ·  Impressum  







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

Problem mit Fehlermeldung

Ein Thema von Landfloh · begonnen am 8. Mär 2008 · letzter Beitrag vom 8. Mär 2008
 
Landfloh

Registriert seit: 17. Feb 2008
75 Beiträge
 
Delphi 7 Personal
 
#1

Problem mit Fehlermeldung

  Alt 8. Mär 2008, 18:25
Hallo

Ich habe ein Problem.

Wenn ich mein Programm starte dann kommt diese Fehlermeldung:
Zugriffsverletzung bei Adresse 00403441 in Modul 'MATHE4.exe'. Lesen von Adresse 00000000.

Hier der komplette Quelltext:

Delphi-Quellcode:
unit ZINS1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ExtCtrls;

type
  TZins = class (TObject)
    Kapital,
    Prozent,
    Zinsen: Single;
    constructor Create;
    procedure SetKapital (Txt: String);
    procedure SetProzent (Txt: String);
    procedure SetZinsen (Txt: String);
    function GetKapital: String;
    function GetProzent: String;
    function GetZinsen:String;
  end;
  
  TForm1 = class(TForm)
    Panel1: TPanel;
    Panel2: TPanel;
    Panel3: TPanel;
    Label1: TLabel;
    Edit1: TEdit;
    Edit2: TEdit;
    Edit3: TEdit;
    Button1: TButton;
    Button2: TButton;
    procedure FormCreate(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
  private
    { Private-Deklarationen }
    procedure SetZero;
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;
  Zins : TZins;
  Modus: Integer;
implementation

{$R *.dfm}

constructor TZins.Create;
begin
  inherited Create;
end;

procedure TZins.SetKapital(Txt: String);
begin
  Kapital := StrToFloat (Txt);
end;

procedure TZins.SetProzent(Txt: String);
begin
  Prozent := StrToFloat (Txt);
end;

procedure TZins.SetZinsen(Txt: String);
begin
  Zinsen := StrToFloat (Txt);
end;

function TZins.GetKapital: String;
begin
  Kapital := Zinsen * 100 / Prozent;
  GetKapital := FloatToStrF(Kapital,ffNumber,8,2);
end;

function TZins.GetProzent: String;
begin
  Prozent := Zinsen *100 / Kapital;
  GetProzent := FloatToStrF(Prozent,ffNumber,8,2);
end;

function TZins.GetZinsen: String;
begin
  Zinsen := Kapital * Prozent / 100;
  GetZinsen := FloatToStrF(Zinsen,ffNumber,8,2);
end;

procedure TForm1.SetZero;
begin
  Zins.Kapital := 0;
  Zins.Prozent := 0;
  Zins.Zinsen := 0;
  Edit1.Text := '0';
  Edit2.Text := '0';
  Edit3.Text := '0';
  Modus := 0;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  Zins := Zins.Create;
  SetZero;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  SetZero;
  Label1.Caption :=
    'Setz nur die gesuchte Größe auf Null!';
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
  Label1.Caption := 'Das ist das Ergebnis';
  Zins.SetKapital(Edit1.Text);
  if Edit1.Text = '0then inc (Modus);
  Zins.SetProzent(Edit2.Text);
  if Edit2.Text = '0then inc (Modus,10);
  Zins.SetZinsen(Edit3.Text);
  if Edit3.Text ='0then inc (Modus,100);
  case Modus of
    1 : Edit1.Text := Zins.GetKapital;
    10 : Edit2.Text := Zins.GetProzent;
    100: Edit3.Text := Zins.GetZinsen;
    else
      Label1.Caption := 'Keine oder zu viele Nullen!';
  end;
  Modus := 0;
end;

end.
Kann mir jemand helfen?

Hier auch nochmal die Dateien:
Angehängte Dateien
Dateityp: exe mathe4_145.exe (386,5 KB, 2x aufgerufen)
Dateityp: dpr mathe4_108.dpr (186 Bytes, 0x aufgerufen)
Dateityp: dfm zins1_113.dfm (2,8 KB, 0x aufgerufen)
  Mit Zitat antworten Zitat
 


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 19:46 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