Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Zugriffsverletzung mit ComboBox (https://www.delphipraxis.net/105762-zugriffsverletzung-mit-combobox.html)

haentschman 29. Dez 2007 12:23


Zugriffsverletzung mit ComboBox
 
Hallo alle... :hi:

wieder mal... :wiejetzt:

die verwendete Unit ist eine Kopie einer ähnlichen und ist entsprechend angepaßt:

-Unit Name
-Form Name
-Eingabefelder

Zugriffsverletzung bei folgender procedure:
Delphi-Quellcode:
procedure TFEinstellungen.LieferantEinlesen;
begin
  BitBtn20.Enabled:= True;
  ZQueryLieferant.SQL.Text:= 'select NAME from LIEFERANT order by NAME';
  ZQueryLieferant.Open;
  JvDBGrid7.Columns[0].Width:= 145;
  JvDBGrid7.Columns[0].Title.Caption:= 'Name';
  if not ZQueryLieferant.IsEmpty then
    begin
      BitBtn21.Enabled:= True;
      FBefeuchtungBearbeiten.ComboBoxLieferant.Items.Clear;
      FBSKBearbeiten.ComboBoxLieferant.Items.Clear;  //<--- hier tritt die Zugriffsverletzung auf

      repeat
        FBefeuchtungBearbeiten.ComboBoxLieferant.Items.Add(ZQueryLieferant.FieldValues['NAME']);
        FBSKBearbeiten.ComboBoxLieferant.Items.Add(ZQueryLieferant.FieldValues['NAME']);

      until ZQueryLieferant.FindNext = False;
    end
      else BitBtn21.Enabled:= False;
end;
kommentiere ich die Zeilen mit 'FBSKBearbeiten.' heraus wird das Formular angezeigt und die ComboBox im Formular 'FBefeuchtungBearbeiten' gefüllt. :gruebel:

was ich schon gemacht habe:

- Unit aus dem Projekt entfernt - neu eingebunden
- Uses Anweisungen entfernt --> im Prinzip werden sie beim compilieren neu angelegt
- Namensänderung ComboBoxen

... die Programmierhilfe in Verbindung mit 'FBSKBearbeiten' funktioniert :gruebel:

hat jemand eine spontane Idee ? :roll:

Nuclear-Ping 29. Dez 2007 12:26

Re: Zugriffsverletzung mit ComboBox
 
Was für eine Zugriffsverletzung? Lesen/Schreiben von Adresse 0000...? Wenn ja, versuchst du auf ein nicht-existierendes Objekt zuzugreifen, wahrscheinlich die ComboBox.

haentschman 29. Dez 2007 12:33

Re: Zugriffsverletzung mit ComboBox
 
...hast Recht mit Lesen von Adresse XXXX.

...wenn das Objekt (ComboBox) nicht existent wäre würde es ja auch nicht bei der Programmierhilfe aufgelistet werden oder ? :gruebel:

...ich schmeiß die ComboBoxen mal vom Formular und lege sie neu an... bis gleich. :hi:

[edit]
- runter compilieren - rauf - Namen eingestellt ---> Zugriffsverletzung an gleicher Stelle ( Lesen Adresse 00039C )
[/edit]

Nuclear-Ping 29. Dez 2007 12:36

Re: Zugriffsverletzung mit ComboBox
 
An "FBSKBearbeiten" oder "FBefeuchtungBearbeiten" wird wohl keine Instanz übergeben. Deswegen die ZV.

haentschman 29. Dez 2007 13:03

Re: Zugriffsverletzung mit ComboBox
 
...ich hasse es, wenn ich nicht weiß an welcher Ecke ich suchen muß. :roll:

- bei auskommentierten Zeilen wird die Form mit den ComboBoxen angezeigt...leer. also sind sie als Objekte vorhanden. :?
- dcu's entfernt --> ohne Erfolg. :(
- raus aus Projekt -- rein ins Projekt --> ohne Erfolg. :(


... ich habe keine Idee mehr. Dinge die sonst immer funktionieren ! :wall:

DeddyH 29. Dez 2007 13:05

Re: Zugriffsverletzung mit ComboBox
 
Wird FBSKBearbeiten automatisch oder dynamisch erzeugt?

haentschman 29. Dez 2007 13:22

Re: Zugriffsverletzung mit ComboBox
 
... automatisch.

habe inzwischen die brutale :P Methode probiert:

- Unit aus dem Projekt entfernt.
- neues Formular erzeugt.
- Namen wie gehabt eingestellt.
- nur die Objekte drauf.
- Namen den Objekten zugeordnet.
---> Zugriffsverletzung an gleicher Stelle :wall:

mit FBefeuchtungBearbeiten funktioniert es... mit FBSKBearbeiten nicht.
:arrow: beide Units unterscheiden sich nur in 2 EditFeldern.

:gruebel:

was könnte ich noch probieren ?

DeddyH 29. Dez 2007 13:25

Re: Zugriffsverletzung mit ComboBox
 
Zeig doch mal die *.dpr

Nuclear-Ping 29. Dez 2007 13:45

Re: Zugriffsverletzung mit ComboBox
 
... vorallem zeig mal, wie du die Instanz von TFEinstellungen erstellst ... den ganzen Code davon. Also nicht den Constructor sondern der Teil wo FBefeuchtungBearbeiten und FBSKBearbeiten übergeben oder erzeugt werden.

haentschman 29. Dez 2007 13:52

Re: Zugriffsverletzung mit ComboBox
 
... Danke für Euer Mitgefühl... :roll:

irgend ein Bit liegt bei dem ganzen Projekt quer. :evil:

... jetzt wirft er mit Zugriffsverletzungen aus Units, welche perfekt funktioniert und abgeschlossen waren. :evil:

...ich glaube bald nicht das das mit der FBSKBearbeiten zu tun hat sondern eher daß mein Delphi spinnt. :gruebel:

...trotzdem im Anhang die dpr.




:wall: ...ich lasse das oben mal stehen. Während des Schreibens :idea: ...gingen alle Lampen an.

... als ich dpr geschrieben habe...

- in meinem Projekt steht im OnCreate der Datenbank Unit das Connect zur Datenbank und nach dem Connect werden diverse Daten eingelesen.
- da diese Daten auch Objekte ( wie diese ComboBox ) betreffen muß diese Unit immer in der dpr am Ende stehen damit alle Objekte erzeugt sind.
- ich weiß, daß ich jedesmal bei einer neuen Unit die Datenbank Unit ans Ende verschieben muß. :oops:

... diesmal vergessen... Ich glaube ich brauch mal eine Pause. :oops:

Danke für den Denkanstoß... :hi:


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:49 Uhr.
Seite 1 von 2  1 2      

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