Autor Beitrag
winx
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 249



BeitragVerfasst: Fr 07.07.06 14:01 
Hi

wie kann ich ein WinForm in den Hintergrund verschieben, damit ein zweites vor diesem erscheint?

ausblenden C#-Quelltext
1:
2:
3:
4:
5:
public void do()
{
  Form1.ShowDialog(); //jetzt ist es im Vordergrund
  
}

Während diese Form noch offen ist, soll ein zweites Formular per ButtonClick im Form1 erzeugt und angezeigt werden
und zwar so:

ausblenden C#-Quelltext
1:
2:
3:
4:
while (!abort)
{
  Form2.Show();
}


Nur erschient jetzt immer das 2.Formular nicht im Vordergrund sondern hinter dem Form1...


wie kann ich das ändern???

danke,
winx
Christian S.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 20451
Erhaltene Danke: 2264

Win 10
C# (VS 2019)
BeitragVerfasst: Fr 07.07.06 14:13 
Es müsste doch reichen, die erste Form nicht mittels ShowDialog, sondern mittels Show anzuzeigen.

_________________
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".
winx Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 249



BeitragVerfasst: Fr 07.07.06 14:25 
aber wenn ich die erste form mittels show() anzeige, geht sie kurz auf und ist dann wieder weg...
Christian S.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 20451
Erhaltene Danke: 2264

Win 10
C# (VS 2019)
BeitragVerfasst: Fr 07.07.06 14:41 
:nixweiss: Da musst Du dann schon etwas mehr Code zeigen.

_________________
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".
winx Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 249



BeitragVerfasst: Fr 07.07.06 14:45 
also:

In der einen Klasse wird diese Funktion aufgerufen
ausblenden C#-Quelltext
1:
m_MainForm.ShowDialog();					



Dann wird aus einer eingebundenen DLL heraus wieder ein Form der jetzigen Apllikation aufgerufen.
Von diesem kennt die DLL nur die Schnittstelle:

also ruft die DLL diese Funktion im eigentlichen Formular auf (in ner while-Schleife):

ausblenden C#-Quelltext
1:
2:
3:
4:
5:
public void showForm()
        {
            this.Show();
            this.BringToFront();
        }
Christian S.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 20451
Erhaltene Danke: 2264

Win 10
C# (VS 2019)
BeitragVerfasst: Fr 07.07.06 14:51 
Hallo!

Damit kann ich nichts anfangen. Mehr als Einzeiler wären da schon wirklich gut.

Aber: Wenn die Form verschwindet, wenn Du das ShowDialog durch ein Show ersetzt, wird wohl danach etwas ausgeführt, was die Form verschwinden lässt. ShowDialog wartet ja, bis die Form wieder geschlossen wird, daher tritt das erst auf, wenn Du es durch Show ersetzt.

Grüße
Christian

_________________
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".
winx Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 249



BeitragVerfasst: Fr 07.07.06 14:53 
was könnte das sein, was dass Form verschwinden lässt???
Oder muß ich im Form noch irgendwas einstellen, damit es bei
show() dableibt?
Christian S.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 20451
Erhaltene Danke: 2264

Win 10
C# (VS 2019)
BeitragVerfasst: Fr 07.07.06 15:15 
user profile iconwinx hat folgendes geschrieben:
was könnte das sein, was dass Form verschwinden lässt???
Meine Glaskugel ist in der Reparatur.

user profile iconwinx hat folgendes geschrieben:
Oder muß ich im Form noch irgendwas einstellen, damit es bei
show() dableibt?
Nein, da ist mir nichts bekannt.

_________________
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".
Kha
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 3803
Erhaltene Danke: 176

Arch Linux
Python, C, C++ (vim)
BeitragVerfasst: Fr 07.07.06 18:23 
Auch wenn dich Christian nun schon zweimal vergebens dazu aufgefordert hat, etwas Code preiszugeben, versuche ich mal zu glaskugeln:
Du hast Application.Run vergessen.
winx Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 249



BeitragVerfasst: Mo 10.07.06 09:58 
das werd ich mal probieren. falls es nicht klappt, werd ich mal etwas source posten...