vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
SEPA-Dateien erstellen inkl. IBAN-, BLZ-/Kontonummernprüfung  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Ein- und Umsteiger
Re: Invalid Operation Ecxeption bei Form-Instanziierung 
Autor: Novatlan
Datum: 10.02.12 15:46

Danke für deine Antwort!

Ich habe ehrlich gesagt keine Ahnung, was ich falsch mache.

Ich versuchs mal zu beschreiben was ich mache:
Ich habe ein Form, welches das Hauptform ist und vom Splashscreen (frm_splash) nach 5 Sekunden aufgerufen wird (Code: frm_MainWindow.Show() ). Ich nehme hier bewusst die default-Instanz, da ich nur 1 brauche.

Das Projekt hat viele weitere Forms, die jeweils eine Reihe von Public-Variablen haben. Auf diese wird dann von anderen Forms aus zugegriffen, damit ich die Variablen nicht doppelt und dreifach speichern muss. Die Beschriftung eines Buttons z.B. wird im Hauptfenster als Public str_btn_ok As String = "Akzeptieren" festgelegt und dann in allen anderen forms per frm_hauptfenster.str_btn_ok benutzt.

Ansonsten gibt es keinerlei Interaktionen zwischen den Forms.

Um Default-Instanzen bei den "Unterforms" (also alle außer Splash und Hauptfenster) zu vermeiden, wollte ich nun im hauptfenster ganz oben alle Forms instanziieren.
Also z.B.
Public frm_anwesenheit_i As New frm_anwesenheit
Wann immer ich dieses Fenster dann anzeigen wollte, sollte das mit
frm_anwesenheit_i.Show()
gehen.

Sobald ich aber auch nur ein einziges Form im Hauptfenster auf diese Weise instanziiere, statt einfach die Defaultinstanz aufzurufen, kommt die o.g. Fehlermeldung wenn an der Stelle, wo das Hauptfenster vom Splash-Screen aufgerufen wird. Dabei wird doch gerade das Hauptfenster (auf das angeblich ja irgendwie falsch zugegriffen wird) gar nicht manuell instanziiert! Das nutzt doch immer noch die Default-Instanz.

Ich hatte dann versucht, die ganzen Instanziierungen in die Load-Prozedur des Hauptfensters zu packen. Wenn ich das aber mache, dann sagt VS sobald ich in einer anderen Prozedur das Form aufrufen will, dass die Variable nicht zugreifbar sei, da sie Private für die Load-Methode ist. Klar ist, sie ja auch, aber das kann ich nicht ändern, denn Public kann man laut VS innerhalb einer Methode nicht benutzen.
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Invalid Operation Ecxeption bei Form-Instanziierung1.883Novatlan10.02.12 14:19
Re: Invalid Operation Ecxeption bei Form-Instanziierung1.342Preisser10.02.12 15:26
Re: Invalid Operation Ecxeption bei Form-Instanziierung1.253Novatlan10.02.12 15:46
Re: Invalid Operation Ecxeption bei Form-Instanziierung1.308Preisser10.02.12 16:02
Re: Invalid Operation Ecxeption bei Form-Instanziierung1.266ModeratorFZelle10.02.12 17:52
Re: Invalid Operation Ecxeption bei Form-Instanziierung1.321Novatlan10.02.12 20:34
Re: Invalid Operation Ecxeption bei Form-Instanziierung1.259Manfred X10.02.12 20:43
Re: Invalid Operation Ecxeption bei Form-Instanziierung1.267Novatlan10.02.12 20:48
Re: Invalid Operation Ecxeption bei Form-Instanziierung1.304Manfred X10.02.12 20:51
Re: Invalid Operation Ecxeption bei Form-Instanziierung1.259keco11.02.12 11:02
Re: Invalid Operation Ecxeption bei Form-Instanziierung1.262Novatlan10.02.12 20:54
Re: Invalid Operation Ecxeption bei Form-Instanziierung1.284Manfred X10.02.12 21:00
Re: Invalid Operation Ecxeption bei Form-Instanziierung1.218Novatlan10.02.12 21:01
Re: Invalid Operation Ecxeption bei Form-Instanziierung1.294Manfred X10.02.12 21:16
Re: Invalid Operation Ecxeption bei Form-Instanziierung1.277Novatlan10.02.12 21:18
Re: Invalid Operation Ecxeption bei Form-Instanziierung1.275Novatlan11.02.12 11:20

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2024 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel