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 - Testo in C#
Forum - C# / VB.NET - Testo in C# - Pagina 3

Pagine: [ 1 2 3 ] Precedente | Prossimo
Avatar
Dax89 (Member)
Expert


Messaggi: 283
Iscritto: 07/04/2007

Segnala al moderatore
Postato alle 14:45
Lunedì, 07/04/2008
Testo quotato

Postato originariamente da Exit93:

Supponendo ke ho una label (lbl1) e un pulsate in un form diverso da quello della label
Come faccio in C# a cambiare testo alla label al click sul pulsante???



Puoi passare la Label come parametro al costruttore della form che contiene il pulsante, quindi:

Codice sorgente - presumibilmente C++

  1. using System;
  2. using System.Windows.Forms;
  3.  
  4. public class FormConPulsante: Form
  5. {
  6.      private Label _mainFormLabel;
  7.  
  8.      public FormConPulsante(Label mainFormLabel)
  9.      {
  10.          this._mainFormLabel = mainFormLabel;
  11.      }
  12. }



Quindi, nella form principale, quando istanzi questa Form, farai:

Codice sorgente - presumibilmente C# / VB.NET

  1. FormConPulsante fcp = new FormConPulsante(this.lbll);



:k:

Ultima modifica effettuata da Dax89 il 07/04/2008 alle 14:47
PM Quote
Avatar
Il Totem (Admin)
Guru^2


Messaggi: 3635
Iscritto: 24/01/2006

Segnala al moderatore
Postato alle 20:48
Lunedì, 07/04/2008
Testo quotato

Postato originariamente da Dark_Limit:
Non è Visual Basic Totem, ma è C#. In C# non esiste my per cui basta mettere il nome del form direttamente..:D



Sono un idiota :rotfl:
D'altra parte, da un linguaggio C-like non ci si poteva aspettare qualcosa di logico :D

PM Quote
Avatar
Exit93 (Ex-Member)
Rookie


Messaggi: 34
Iscritto: 31/03/2008

Segnala al moderatore
Postato alle 16:03
Martedì, 08/04/2008
Testo quotato

Postato originariamente da Dax89:

Testo quotato

Postato originariamente da Exit93:

Supponendo ke ho una label (lbl1) e un pulsate in un form diverso da quello della label
Come faccio in C# a cambiare testo alla label al click sul pulsante???



Puoi passare la Label come parametro al costruttore della form che contiene il pulsante, quindi:

Codice sorgente - presumibilmente C++

  1. using System;
  2. using System.Windows.Forms;
  3.  
  4. public class FormConPulsante: Form
  5. {
  6.      private Label _mainFormLabel;
  7.  
  8.      public FormConPulsante(Label mainFormLabel)
  9.      {
  10.          this._mainFormLabel = mainFormLabel;
  11.      }
  12. }



Quindi, nella form principale, quando istanzi questa Form, farai:

Codice sorgente - presumibilmente C# / VB.NET

  1. FormConPulsante fcp = new FormConPulsante(this.lbll);



:k:



Non va :(:(

PM Quote
Avatar
Dax89 (Member)
Expert


Messaggi: 283
Iscritto: 07/04/2007

Segnala al moderatore
Postato alle 21:57
Martedì, 08/04/2008
Uhm, è molto strano, perchè io faccio sempre così, per interagire con i controlli della form principale da una secondaria.

Mi puoi dire cos'hai fatto di preciso??8-|

PM Quote
Avatar
Exit93 (Ex-Member)
Rookie


Messaggi: 34
Iscritto: 31/03/2008

Segnala al moderatore
Postato alle 9:23
Mercoledì, 09/04/2008
Come hai detto tu, ma l'ide non mi accetta questo:
Codice sorgente - presumibilmente C# / VB.NET

  1. private Label _mainFormLabel;
  2.  
  3.      public FormConPulsante(Label mainFormLabel)
  4.      {
  5.          this._mainFormLabel = mainFormLabel;
  6.      }


Ovviamente modificato a dovere

PM Quote
Avatar
Dax89 (Member)
Expert


Messaggi: 283
Iscritto: 07/04/2007

Segnala al moderatore
Postato alle 15:40
Mercoledì, 09/04/2008
Vediamo, provo a spiegarmi meglio.
Allora, la tua Form Secondaria deve diventare così:

Codice sorgente - presumibilmente Delphi

  1. partial class Form2
  2.     {
  3.         /// <summary>
  4.         /// Required designer variable.
  5.         /// </summary>
  6.         private IContainer components = null;
  7.         //QUESTA VARABILE CONTERRA' LA LABEL DELLA        
  8.         //FORM PRINCIPALE
  9.         private Forms.Label _label;    
  10.  
  11.         //COSTRUTTORE
  12.         public Form2(Label mainFormLabel)
  13.         {
  14.              //TRAMITE IL COSTUTTORE ASSEGNAMO  
  15.              //LA VARIABILE '_label'
  16.              this._label = mainFormLabel;
  17.         }
  18.  
  19.         //Quì c'è il resto del codice della Form2



Praticamente, diamo al costruttore della classe un parametro di tipo Label, questo verrà usato internamente nella form secondaria.
Quindi:
Istanziandola faremo:

Codice sorgente - presumibilmente C# / VB.NET

  1. //Questo è il momento che possiamo dare alla form secondaria la label che volgiamo modificare.
  2. Form2 frm2 = new Form2(this.lbll);



Praticamente assegnamo la variabile definita prima all'interno di 'Form2' tramite il costruttore, permettendoci di modificarla da un altro Form.
In questo caso ci rende possibile modificare la Label 'lbll' da una form diversa.

Spero di essere stato più chiaro questa volta.;)

Ultima modifica effettuata da Dax89 il 09/04/2008 alle 15:44
PM Quote
Avatar
Exit93 (Ex-Member)
Rookie


Messaggi: 34
Iscritto: 31/03/2008

Segnala al moderatore
Postato alle 17:45
Mercoledì, 09/04/2008
:k: poi provo che ora non posso, ma non ci sono modi + semplici?

PM Quote
Avatar
Dax89 (Member)
Expert


Messaggi: 283
Iscritto: 07/04/2007

Segnala al moderatore
Postato alle 18:14
Mercoledì, 09/04/2008
Beh, questo non è difficile, si tratta solo di assegnare una variabile dal costruttore.
E' più facile da fare che da spiegare, comunque non conosco altri modi.

PM Quote
Pagine: [ 1 2 3 ] Precedente | Prossimo