Delphi-Forum.de Delphi-Library.de
C-Sharp-Forum.de C-Sharp-Library.de
Registrieren Login Suche Hilfe Sitemap
Form aufrufen, Main weiterlaufen
spacer
Autor Nachricht
Nahameth
Hält's aus hier

Beiträge: 2
Dabei seit: 10.03.2010



BeitragVerfasst: Mi 10.03.10 15:52  Antworten mit Zitat Beitrag melden
Hallo, bin neu hier und auch neu in C#. Sorry falls dies das falsche Forum ist. bin mir nicht sicher.

habe ein Programm mit einer "Form1" und einem Code "Program.cs" in dem das Main steht. Ich will die Form aufrufen und dann soll das Main aber weiter arbeiten. Mit
Application.Run(new Form1());

hält die Main aber dann an. Was mache ich falsch. In dem "Program.cs" läuft ein Thread der Bilder aus einem Framegrabber holt und in einem Window darstellt. Die Form soll unabhängig davon offen sein und einige Daten anzeigen bzw. das Window steuern.
Private Nachricht sendenPosting in privater Nachricht zitieren
Ralf Jansen
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starhalf offtopic star

Beiträge: 334
Erhaltene Danke: 6
Dabei seit: 15.03.2007
Wohnort: Willich


VS2008 Pro, VS2010 Pro, Delphi 7 Pro
BeitragVerfasst: Mi 10.03.10 16:16  Antworten mit Zitat Beitrag melden
Das macht keinen Sinn. Application.Run startet die MessagePump und ist im Prinzip der Kern deiner Anwendung. Wenn du etwas während des Programmlaufs tun möchtest (und nicht initial oder abschließend) gehört es in die Abhängigkeit des Contextes mit dem du Application.Run aufrufst. Hier ist Form1 der Context also mußt du deinen Thread von Form1 aus oder einer Abhängigkeit von Form1 aus starten(und verwalten).
Private Nachricht sendenPosting in privater Nachricht zitieren Webseite dieses Mitglieds besuchen
Nahameth
Hält's aus hier

(Threadstarter)

Beiträge: 2
Dabei seit: 10.03.2010



BeitragVerfasst: Do 11.03.10 08:14  Antworten mit Zitat Beitrag melden
user profile iconRalf Jansen hat folgendes geschrieben Zum zitierten Posting springen:
Das macht keinen Sinn. Application.Run startet die MessagePump und ist im Prinzip der Kern deiner Anwendung. Wenn du etwas während des Programmlaufs tun möchtest (und nicht initial oder abschließend) gehört es in die Abhängigkeit des Contextes mit dem du Application.Run aufrufst. Hier ist Form1 der Context also mußt du deinen Thread von Form1 aus oder einer Abhängigkeit von Form1 aus starten(und verwalten).


Danke Rolf.

Hab' jetzt 2 Threads gestartet. Einen für das Darstellungsfenster und einen für das Steuerfenster (Form1). Das hat auch funktioniert. Werde jetzt noch mal deinen Vorschlag probieren.
Private Nachricht sendenPosting in privater Nachricht zitieren
JasonDelife
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star

Beiträge: 80
Dabei seit: 19.06.2008
Wohnort: Baden-Württemberg

Windows 7 Professional
C# (Visual Studio 2008 Professional), Java (NetBeans IDE 6.7)
BeitragVerfasst: Do 11.03.10 18:20  Antworten mit Zitat Beitrag melden
Kann böse enden. Generell sollten ALLE Fenster und Controls in EINEM einzigen Thread laufen. Die anderen Threads sollten dann arbeiten verrichten und den GUI-Thread per BeginInvoke() benachrichtigen.

Grüße, JasonDelife.
Private Nachricht sendenPosting in privater Nachricht zitieren
Werbung ausblenden? Dann registriere Dich kostenlos. Weitere Gründe für eine Registrierung.


Werbung ausblenden? Dann registriere Dich kostenlos. Weitere Gründe für eine Registrierung.
Beiträge vom vorherigen Thema anzeigen:   
home home