ERLEDIGT
NEIN
NEIN
ANTWORTEN
3
3
ZUGRIFFE
1160
1160
EMPFEHLEN
-
ich öffne die Forms grne mit Form1.ShowDialog (also Modal) damit diese Fenster nicht versehendlich doppelt geöffnet werden kann, oder andere Funktionen von anderen Fenstern bedient werden können. Nur beim Schliessen der Form1
(mit Me.Close) und wieder öffnen habe ich manchmal Probleme. Entweder der Timer funktioniert nicht (obwohl ornungsgemäss dis-/ und enabled)mehr richtig oder irgend welch Werte (die ich irgendwo anders deklariert habe) werden nicht richtig übernommen.
Gibt es da eine andre Möglichkeit die Forms zu schliessen ?
Wird der Thread mit Me.Close nicht richtig geschlossen ?
vielen Dank
FrankFrage: was ist 1+1 ?
Der Physiker: irgendwas zwischen 0 und 1000!
Richtig, Wert liegt innerhalb des Grenzwertes.
Der Mathematiker: (nach 10 h)Aufgabe lösbar, alles andere ist trivial!, Richtig!
Der Informatiker: 1.999999999999999... haste mal mehr Druckpapier?
-
Ich habe bei meinem Projekt ein Modul eingefügt, das für die Verwaltung der Fenster verantwortlich ist.
Darin ist für jedes Fenster eine Objektvariable enthalten, die von anfang an instanziert wird.
Ich öffne und schliesse meine Fenster mit form.show() und form.hide()
Vorteil: Kann nur einmal existieren, da nur eine Instanz vorhanden.
Alle Werte, Prozeduren (auch Timer) bleiben, auch während und nach dem Verstecken und wieder Anzeigen erhalten.
Ich hoffe, dir damit geholfen zu haben.
PS: Mit Threads kenn ich mich nicht so aus, wenn auch ein sehr spannendes Thema. Eigentlich sollte der Thread dann geschlossen sein, bin mir aber nicht ganz sicher...Zu jedem Problem gibt es mindestens eine Lösung.
Zu jeder Lösung gibt es mindestens eine bessere Lösung
-
oh ja, auch eine sehr gute Idee.
Erst alle Forms öffnen und alle nicht gebrauchten auf hide oder disable setzen.
vielen Dank
FrankFrage: was ist 1+1 ?
Der Physiker: irgendwas zwischen 0 und 1000!
Richtig, Wert liegt innerhalb des Grenzwertes.
Der Mathematiker: (nach 10 h)Aufgabe lösbar, alles andere ist trivial!, Richtig!
Der Informatiker: 1.999999999999999... haste mal mehr Druckpapier?
-
Bei Fenster die nur einmal geöffnet werden dürfen kann ich nur Singleton Pattern unter vb.net empfehlen.
Geht in etwa so:
Public Class frmOptionen
Inherits System.Windows.Forms.Form
private shared myInstance as frmOptionen
public shared function GetInstance()as frmOptionen
if myInstance is nothing then
myInstance = new frmOptionen
end if
return myInstance
end function
private sub OnClosing(.....)
cancel = true
me.hide()
end sub
.... übriger Sourcecode.........
end class
Aufrufende Methode
private sub mnuOptionen_Click(sender as object, e as System.EventArgs)
Dim dlgOptionen as frmOptionen = frmOptionen.GetInstance
dlgOptionen.Show
end subGeändert von oetzel (17.03.04 um 21:39 Uhr)
Ähnliche Themen
-
VS 2010 Express: Mit ShowDialog geöffnete Form per Programm schliessen
Von brunlorenz im Forum VisualStudio & MFCAntworten: 10Letzter Beitrag: 17.07.10, 14:28 -
Problem mit ShowDialog
Von warcraft9105 im Forum .NET Windows FormsAntworten: 1Letzter Beitrag: 14.07.10, 16:16 -
Form1.Keyup und Form1.KeyDown-Problem
Von PH234X im Forum .NET Windows FormsAntworten: 1Letzter Beitrag: 14.08.09, 15:30 -
Form1.Keyup und Form1.KeyDown-Problem
Von PH234X im Forum Visual Basic 6.0Antworten: 1Letzter Beitrag: 13.08.09, 17:59 -
Funktion aus Form1.h in Form1.cpp auslagern
Von dertobian im Forum C/C++Antworten: 9Letzter Beitrag: 15.06.07, 12:59





Zitieren
Login





