![]() |
EAccessViolation
Liste der Anhänge anzeigen (Anzahl: 2)
hey, ich mach grad ein paar kleine Übungen mit gemacht. Unter anderem auch folgendes Beispiel: ich berechne das Zylindervolumen mittels radius und höhe, erzeuge dann ein editfeld und schreib das ergebnis rein. Anschließend kann man das Feld wieder löschen und das formular schließen. Funzt auch alles aber anschließend haut er mir die angehängten Fehlermeldungen raus. Kann mir jemand erklären, was ich falsch gemacht habe?
Danke schonmal :)
Delphi-Quellcode:
unit FunctionErzeugungEdit;
interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm1 = class(TForm) Edit1: TEdit; Edit2: TEdit; Button1: TButton; Button2: TButton; Button3: TButton; procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); procedure Button3Click(Sender: TObject); private procedure EditFeld; public { Public-Deklarationen } end; var Form1: TForm1; edFeld:TEdit; implementation {$R *.dfm} var v: Double; function zylinder(r,h:Double):Double; begin Result:=pi*sqr(r) * h end; procedure TForm1.Button1Click(Sender: TObject); begin form1.EditFeld; try v:=zylinder(strtofloat(edit1.Text), strtofloat(edit2.Text)); edfeld.Text:=floattostr(v) except edfeld.Text:='Fehler, nur Zahlen eingeben' end; end; procedure TForm1.Button2Click(Sender: TObject); begin edfeld.text:=''; edfeld.Free; end; procedure tform1.EditFeld; begin edFeld:=tedit.Create(form1); edFeld.Create(form1); edFeld.Parent:=form1; edFeld.name:='DOOOOOOF'; edFeld.SetBounds(200,200,80,20); end; procedure TForm1.Button3Click(Sender: TObject); begin close end; end. [edit=Matze][delphi]-Tags eingefügt. Zukünftig bitte selbst daran denken. MfG, Matze[/edit] |
Re: EAccessViolation
Schließe bitte künftig Deinen Code in Delphi-Tags ein, dann ist er leichter zu lesen. Und mir ist diese Stelle aufgefallen:
Zitat:
|
Re: EAccessViolation
Hi,
zwei Sachen: 1. Gewöhne dir bitte an, Quellcode in Delphi-Tags zu setzen. Das erhöht die Lesbarkeit...;) 2. Eine Zugriffsverletzung bei der Adresse 00000000 deutet meist auf ein noch nicht erzeugtes Objekt hin. Ich verstehe auch noch nicht so ganz, warum du das Edit-Feld überhaupt dynamisch erzeugst. |
Re: EAccessViolation
hey, danke, stimmt. jetzt gehts :) das forum ist für einsteiger echt klasse, mus ich mal sagen. So schnelle qualifizierte antworten zu bekommen macht echt freude :thumb:
|
Re: EAccessViolation
das erzeugen mach ich nur so aus übungszwecken ;) da mangelts mir ein wenig an phantasie. ich misch das einfach immer ein bisschen ineinander
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:22 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 by Thomas Breitkreuz