Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
public void SetScritta(string messaggio)
{
scritta = messaggio;
}
//Secondo FORM
public class Form2
{
Form1 primo = new Form();
primo.SetScritta("Hello World!");
}
}
Questo e' uno dei sistemi
Non puoi convertire una stringa in label, semmai sarà:
Codice sorgente - presumibilmente Plain Text
scritta.Text = messaggio;
Per modificare la proprietà di un altro form non puoi crearne una nuova istanza, perchè esso è già aperto.
Risolviamo così:
Codice sorgente - presumibilmente C++
staticclass Globals
{
publicstatic Form1 DefaultForm1;
publicstatic Form2 DefaultForm2;
//...
void Initialize(Form1 MainForm)
{
DefaultForm1 = MainForm;
DefaultForm2 =new Form2();
//...
}
}
E poi nell'applicazione principale, al form load richiami:
Codice sorgente - presumibilmente Plain Text
Globals.Initialize(this);
E, per visualizzare o accedere a tutti gli altri form:
Codice sorgente - presumibilmente Plain Text
Globals.DefaultForm2.Show();
//oppure
Globals.DefaultForm2.Label1.Text = "Ciao";
Globals non è altro che una classe statica che contiene tutte le istanze di default di tutti i form, ossia svolge la stessa funzione di My.Forms in vb.net, solo che la devi creare tu.
Ultima modifica effettuata da Il Totem il 05/09/2008 alle 11:17
Si vero totem ha ragione
Nel modo indicato da me i form partono subito entrambi
Hehe scrivo gli shader e non so scrivere due FORM senza provare il codice
Lo sai che non mi piace quando dite "non funziona". Dimmi dov'è l'errore, quel è e quando si verifica, se ce n'è uno. Se non ci sono errori, usi il codice nel modo sbagliato.