Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
C# / VB.NET - Problema con thread e apertura di un form dentro un ciclo
Forum - C# / VB.NET - Problema con thread e apertura di un form dentro un ciclo

Avatar
hakzc (Normal User)
Rookie


Messaggi: 37
Iscritto: 07/07/2012

Segnala al moderatore
Postato alle 10:50
Sabato, 20/06/2015
Come da titolo dovrei aprire un nuovo form da un thread "ciclato" ( ovvero un thread con un ciclo al proprio interno che si ripete all'infinito). Quando il form viene aperto, la GUI rimane bloccata e il puntatore in caricamento..
Come potrei risolvere? Devo aprire il form perforza dentro quel thread

PM Quote
Avatar
nessuno (Normal User)
Guru^2


Messaggi: 6380
Iscritto: 03/01/2010

Segnala al moderatore
Postato alle 11:45
Sabato, 20/06/2015
Non si capisce ... mostra il codice di cui parli e dicci anche a che ti serve una cosa del genere ...


Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti (uno dei padri fondatori del moderno Calcolo delle probabilità) chiamava il gioco del Lotto Tassa sulla stupidità.
PM Quote
Avatar
hakzc (Normal User)
Rookie


Messaggi: 37
Iscritto: 07/07/2012

Segnala al moderatore
Postato alle 11:56
Sabato, 20/06/2015
in pratica ho un'applicazione client/server, in questo thread continuamente in ascolto nello stream (qui il loop infinito) ricevo i messaggi dal client, e se ricevo ad esempio il messaggio "apriFom" devo aprire Form2, il problema è che aprendo un form in questo thread, il form aperto rimane bloccato e inutilizzabile

PM Quote
Avatar
GN (Member)
Guru


Messaggi: 772
Iscritto: 30/04/2011

Segnala al moderatore
Postato alle 13:14
Sabato, 20/06/2015
Se ho capito bene vuoi modificare la GUI da un thread che non è quello che la gestisce; dovresti riuscire a risolvere così:
Codice sorgente - presumibilmente Plain Text

  1. this.Invoke((MethodInvoker)delegate {
  2.     form2.Show();
  3. });


Ultima modifica effettuata da GN il 20/06/2015 alle 13:15
PM Quote