AGB  ·  Datenschutz  ·  Impressum  







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

Einfaches MVC Modell funktioniert nicht!

Ein Thema von mo_greene · begonnen am 10. Jun 2007 · letzter Beitrag vom 10. Jun 2007
 
mo_greene

Registriert seit: 10. Dez 2006
Ort: Berlin
136 Beiträge
 
Turbo Delphi für Win32
 
#1

Einfaches MVC Modell funktioniert nicht!

  Alt 10. Jun 2007, 16:18
Hallo,

habe einen BMI Rechner auf MVC Basis programmiert und auch beim zweiten unabhängigen Programmieren trat der gleiche Fehler auf ...das Programm kann compiliert werden, jedoch wenn Werte eingegeben wurden und das Programm den BMI berechnen soll, erscheint ein Fehler!

Vielleicht kann sich jemand das mal ansehen...wäre super nett!!

Delphi-Quellcode:
unit uView_Control;

interface

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

type
  TForm1 = class(TForm)
    GroesseLblEdt: TLabeledEdit;
    GewichtLblEdt: TLabeledEdit;
    BMILblEdt: TLabeledEdit;
    BerechneBtn: TButton;
    procedure BerechneBtnClick(Sender: TObject);
    procedure Datenaktualisieren;
    procedure Maskeaktualisieren;
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;
  Modell: TModell;

implementation

{$R *.dfm}

procedure TForm1.BerechneBtnClick(Sender: TObject);
begin
  Datenaktualisieren;
  Maskeaktualisieren;
end;

procedure TForm1.Datenaktualisieren;
begin
  Modell.setGroesse(strtoint(GroesseLblEdt.Text));
  Modell.setGewicht(strtoint(GewichtLblEdt.Text));
end;

procedure TForm1.Maskeaktualisieren;
begin
  BMILblEdt.Text := floattostr(Modell.getBMI);
end;

end.
Delphi-Quellcode:
unit uModell;

interface

type
  TModell = class(TObject)
  private
    Groesse : Integer;
    Gewicht : Integer;
    BMI : Real;
  public
    procedure setGroesse (a:Integer);
    procedure setGewicht (a:Integer);
    function getBMI : Real;

end;

implementation

procedure TModell.setGroesse(a: Integer);
begin
  Groesse := a; // hier soll laut Delphi der Fehler liegen!
end;

procedure TModell.setGewicht(a: Integer);
begin
  Gewicht := a;
end;

function TModell.getBMI : Real;
begin
  BMI := Gewicht/((Groesse/100)*(Groesse/100));
  result := BMI;
end;
end.

Folgende Fehlermeldung erscheint:
Im Projekt BMI.exe ist eine Exception der Klasse EAccessViolation aufgetreten. Meldung: 'Zugriffsverletzung bei Adresse 0045055C in Modul 'BMI.exe'. Schreiben von Adresse 00000004'. Prozess wurde angehalten. Mit Einzelne Anweisung oder Start fortsetzen.


Vielen Dank!!
  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 22:23 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