![]() |
Access Violation bei Unitübergreifenden Schreiben/Lesen
GUTEN MORGEN,
da bin ich wieder ^^ nachdem Ihr mir sooo nett geholfen habt bei meinem anderen Problem muss ich doch jetzt nochmal auf eure Hilfe zurückgreifen. Problem: Ich hab ne Access Violation wenn ich Unitübergreifend was lesen bzw. schreiben möchte. Im Detail: Im Restframe welcher in der Unit REST_Unit befindet gibt es eine ScrollBox1. Dieser Restframe ist in TForm1. Nun möchte ich von TForm2 auf die Scrollbox zugreifen und Edits/Labels createn. Also habe ich in TForm2 in den uses folgendes eingetragen:
Delphi-Quellcode:
ok... super klappt auch ^^
uses REST_Unit;
also möchte ich nun in der Scrollbox1 vom Restframe ein Label erstellen:
Delphi-Quellcode:
wobei Beschr natürlich in Form2 deklariert ist mit Beschr : TLabel;
Beschr := TLabel.Create(REST_Unit.Restframe.ScrollBox1);
Nun gut, dabei zeigt er mir eine Acces Violation in Adresse blablabla... naja das typische halt... Ok dachte ich... vllt kannst du nicht "schreiben" aber lesen sollte doch gehen Also hab ich mal versucht mir die Anzahl der Spalten des Stringgrids im Restframe auslesen zu lassen mit:
Delphi-Quellcode:
Und... wie soll es anders sein ^^ geht natürlich auch nicht und auch da bekomme ich eine Access Violation.
AnzahlSpalten := REST_Unit.Restframe.StringGrid1.ColCount;
Diese Fehlermeldungen sagen mir natürlich sehr sehr viel ^^ .... ne eigentlich nur... da is nen Fehler :D Deswegen muss ich nochmal eure Hilfe in Anspruch nehmen :D Danke schonmal Ach vllt ist folgendes noch intressant, vllt ist da der Fehler?! Und zwar habe ich in REST_Unit eine globale Variable vom Typ TFrame_REST angelegt, da ich sonst nicht zu den Componenten auf dem Frame gekommen wäre. MFG Andre |
Re: Access Violation bei Unitübergreifenden Schreiben/Lesen
Von einem Frame wird nicht wie bei einer Form von Delphi standardmäßig eine Instanz erzeugt! Du musst eine Instanz das Frames entweder manuell erzeugen oder das Frame auf eine Form packen. Somit ist deine Variable von deinem Frame nil und logisch gibt es so Exceptions ...
Zitat:
|
Re: Access Violation bei Unitübergreifenden Schreiben/Lesen
Der Fehler wird sein das Restframe einfach noch nicht erzeugt ist und auf nil zeigt.
Und was du machen willst halte ich für sehr schlechtes SW-Design wenn man kreuz und quer von einem Form auf andere Form Elemente erzeugt. |
Re: Access Violation bei Unitübergreifenden Schreiben/Lesen
Zitat:
Diese "Einbettung" der Frames habe ich über die IDE gemacht also denke ich doch mal das Delphi die Instanz selber gemacht hat oder? Zitat:
Zu dem SW-Design... also dieses Kreuz und Quer wäre nur 1mal in dieser Beziehung. Ansonsten ist halt alles mit Frames realisiert... dazu muss ich ja sagen das ich in der Ausbildung bin und von dahher ^^... hab ich denk ich mal noch die License zum Fehler machen ^^ :D |
Re: Access Violation bei Unitübergreifenden Schreiben/Lesen
Zitat:
Zitat:
|
Re: Access Violation bei Unitübergreifenden Schreiben/Lesen
Zitat:
Zitat:
Über... TForm1.TREST_Frame... komme ich nicht bis zum Scrollbox1.... es geht nicht... aus diesem Grunde habe ich ja die Variable Restframe eingerichtet welche dann auf dem TREST_Frame zeigt. Warum das nicht so geht?! KEINE AHNUNG ^^ Deep-Sea... ich habe mich gerade mal getraut dich im ICQ anzuschreiben... aber schreinst nicht online zu sein :D :cat: |
Re: Access Violation bei Unitübergreifenden Schreiben/Lesen
Zitat:
Zitat:
|
Re: Access Violation bei Unitübergreifenden Schreiben/Lesen
Zitat:
|
Re: Access Violation bei Unitübergreifenden Schreiben/Lesen
Zitat:
|
Re: Access Violation bei Unitübergreifenden Schreiben/Lesen
Zitat:
Ich kann komischerweise auf die Scrollbox NICHT so zugreifen: Form1.Frame.Scrollbox.... das klappt komischerweise nicht und deswegen habe ich mir in dem Frame eine Variable gemacht mit einem Zeiger auf den Frame und siehe da... nun kann ich halt per Form1.Variable die auf Frame zeigt.Scrollbox zugreifen, wobei ich nicht lesen oder schreiben kann. das ist das aktuelle Prob ^^ Danke für die Hilffeeee :D |
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:50 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