ERLEDIGT
JA
JA
ANTWORTEN
7
7
ZUGRIFFE
347
347
EMPFEHLEN
-
Hallo,
ich habe folgendes Problem. Ich habe eine MainForm im Programm, welche eine andere Form mit Show öffnet. Nun ist allerdings sobald beide Formen offen sind kann ich die MainForm nicht in den Vordergrund schieben, sie geht zwar vor allen anderen Programmen, aber bleibt immer hinter der zweiten Form.
Es ist auch so wenn die zweite Form aktualisiert wird, soll sie mit this.Activate(); und this.Focus(); dem Benutzer mitteilen, daß diese geändert wurde. Stattdessen sagt das Programm aber die Mainform wurde geändert und blinkt auch unten in der Task leiste. Sobald ich dann auf der Mainform in der Task leiste klicke, öffnet sich stattdessen die zweite Form.
Weiß einer Rat bzw. woran das liegt und wie man das ändern kann. Ich möchte gerne das die beiden Formen sich unabhängig voneinander verhalten.
Viele Grüße und ich wünsche noch einen schönen Abend
Fridulin
-
Hi
Sicher, das du Form.Show() aufrufst?
Das klingt für mich eher nach Show(IWin32Window) oder ShowDialog().
Zeig doch mal deinen Code, vielleicht lässt sich dann das Problem lösen.Grüße Nico
----------------------
Xing
----------------------
Zitat von Mark Twain (1835-1910)
Zitat von Mike Wilson - Biographie über Larry Ellison (CEO Oracle)
-
Hallo,
vielen Dank für die Antwort.
Also ich deklariere die Form Global. Da ich mehrmals an der Form von der MainForm etwas hinzufügen muß.
Code :1 2
// Global user_form user_formcha;
Dann Prüfe ich in ein Hash mit Contain ob sie bereits geöffnet ist und wenn nicht öffne ich Sie, andernfalls füge ich Ihr nur etwas hinzu bzw. Aktualisiere sie.
Code :1 2 3 4
user_formcha = new user_form(this); user_formcha.Text = wem; meldung = meldung.Substring(10); user_formcha.Show(this);
Danach Füge ich der Form etwas hinzu und Aktualisiere sie.
Code :1 2 3
user_formcha.Nachricht = meldung; user_formcha.Wem = wem; user_formcha.aktualisieren();
Viele Grüße
Fridulin
-
Hallo,
leider bin ich immer noch nicht auf die Lösung gekommen. Wie man sieht aktualisiert die MainForm die zweite Form. Kann es sein das die zweite Form dann automatisch im Vordergrund bleibt?
Viele Grüße und über jede Hilfe wäre ich sehr Dankbar.
Fridulin
-
21.07.08 11:26 #5
Hi,
wie Nico schon schrieb: Dadurch, dass du Form.Show(IWin32Window) verwendest, bleibt das Form im Vordergrund.
Verwende entweder ShowDialog() um das Form modal zu öffnen, oder verwende Show() ohne Parameter. Dann wird das neue Formular nicht weiter im Vordergrund dargestellt, wenn du z.B. das MainForm den Fokus erhält.
Wenn du eine Referenz auf das MainForm im neuen Form benötigt, dann erweitere den Konstruktor und gebe das MainForm mit.
-
Hallo,
vielen Dank für die Antwort.
Also ist „user_formcha.Show(this)“, das gleiche wie „user_formcha.Show(IWin32Window)“? Das wußte ich nicht. Ich dachte er braucht das wegen „user_formcha = new user_form(this)“ benötigt er das „this“ auch in Show.
Ich habe es gleich mal getestet und siehe da es Funktioniert. Vielen Dank.
Viele Grüße und ich wünsche noch einen schönen Tag.
Fridulin
-
21.07.08 16:41 #7
Es ist das Gleiche gemeint. Damit hat Nico und dementsprechend ich gezielt auf diese Überladung der Show-Methode aufmerksam machen wollen.
-
Hallo,
achso ok, ja jetzt im Nachhinein habe ich das verstanden und es ergibt für mich Sinn. Nur ich bin da zu den Zeitpunkt nicht drauf gekommen, da mir, wie gesagt, nicht klar war das, das gleiche gemeint war.
Viele Grüße
Fridulin
Ähnliche Themen
-
Visual Studio 2008 Hintergrund des zweiten Bildes ist nicht Unsichtbar zu machen.
Von Willy Fog im Forum .NET CaféAntworten: 27Letzter Beitrag: 10.05.11, 00:40 -
mit form.show im "gleichen Fenster bleiben
Von mranonymus im Forum Visual Basic 6.0Antworten: 2Letzter Beitrag: 16.01.08, 18:24 -
Laufzeitfehler bei Form->Show() / ShowModal()
Von Supa im Forum Borland CBuilder und VCLAntworten: 6Letzter Beitrag: 20.09.06, 11:57 -
Probleme mit Form.hide/show
Von Cyberfreaker im Forum Delphi, Kylix, PascalAntworten: 0Letzter Beitrag: 08.11.04, 20:48 -
Variablen in einer zweiten Form freigeben
Von guanidin im Forum .NET ArchivAntworten: 4Letzter Beitrag: 26.10.04, 15:50





Zitieren

Login





