![]() |
Nil nach TForm.Create(nil) ??
Hallo Gemeinde
heute stehe ich wie vernagelt vor einem Problem. Hier ein Auszug aus meiner Unit RgDruck,pas
Delphi-Quellcode:
Ich rufe diese Klasse in der Unit DruckenMain.pas ( mit TMainForm = class (TForm)
unit RgDruck;
interface uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Grids, DBGrids, Db, DBTables, Printers, inifiles, ExtCtrls, Spin, DBCtrls, Calendar, ComCtrls, DruckDaten; { diverse Type deklarationen } type TRgDruckForm = class(TForm) ..... published private .... public end; var RgDruckForm: TRgDruckForm; implementation {......} procedure TRgDruckForm.FormShow(Sender: TObject); var iniFile: TIniFile; cTemp: String; begin {..dieser BLock läuft durch / OK } Screen.Cursor := crHourGlass; iniFileName := '\auftrag3.ini'; // die Userabhängigen infos iniFile := Tinifile.create(iniFileName); try // nach dem Try ist RgDruckForm NIL und schmeißt ne Execption RgDruckForm.Top := iniFile.ReadInteger('RgDruckForm','Top', 100); {weitere iniFile.Read.. } FINALLY iniFile.free; end; Screen.Cursor := crDefault; end; nach Anklicken des entspr. Menupunktes wie folgt auf:
Delphi-Quellcode:
Nützen dies Infos, um mir weiterhelfen zu können?
procedure TMainForm.Rechnung1Click(Sender: TObject);
var frmRgDruck: TRgDruckForm; begin frmRgDruck := TRgDruckForm.create(nil); frmRgDruck.druckTyp := 'Rechnung'; frmRgDruck.OpenDatabases; frmRgDruck.ShowModal; end; Danke schon mal, Hanns p.s. das Schreiben der Property druckTyp klappt; in frmRgDruck.OpenDatabases; wird nur ein ShowMessage() aufgerufen |
Re: Nil nach TForm.Create(nil) ??
Delphi-Quellcode:
Autsch. Zugriff auf die globale Variable RgDruckForm die u.U. nicht initialisiert ist. Am besten die Zeilen
...
RgDruckForm.Top := iniFile.ReadInteger('RgDruckForm','Top', 100); ...
Delphi-Quellcode:
in unit RgDruck löschen um hier diese Fehlerquelle zu eliminieren.
var
RgDruckForm: TRgDruckForm; |
Re: Nil nach TForm.Create(nil) ??
:wall: AUA!!
Diesen Fehler habe ich schon mal gemacht. Danke, nach anpassen des Quelltextes auf
Delphi-Quellcode:
Klappt alles wunderbar.
Top := iniFile.ReadInteger('frmIniFile','Top', 100);
Danke für die Nase drauf stupsen! Hanns |
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:44 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