2 piccoli trucchi per chi si è avvicinato ora al VB.Net

24 08 2007

Eccomi di nuovo qua, oggi scriverò due piccoli trucchi per il VB.Net, rivolti soprattutto a chi ha scoperto da poco questo linguaggio e cerca una soluzione ad un problema. I problemi di cui scriverò sono: “Come fare ad abilitare un pulsante SOLO quando 1 o più TextBox sono piene (cioè vi si è scritto dentro)” e “Avere l’ora di Windows su un proprio programma come quella nella SysTray (vicino all’orologio)”.

Partiamo con il primo problema.

Nel caso di una sola TextBox è davvero semplice. Settiamo la Proprietà Enabled del nostro pulsante a False; nell’evento TextChanged della TextBox che ci interessa, dobbiamo scrivere questo codice:

Codice:

If TextBox1.TexLength <> 0 Then
      Button1.Enabled = True
Else
      Button2.Enabled = False
End If

Invece, mettiamo il caso di 2 TextBox. Il codice è sostanzialmente lo stesso, ma si aggiunge un And che impone che tutte e 2 le TextBox devono essere piene. Il codice dovrà essere scritto nell’evento TextChanged dell’ultima TextBox. Ad esempio se abbiamo TextBox1 e TextBox2 dovrete scrivere il codice in TextBox2:

Codice:

If TextBox1.TextLength <> 0 And TextBox1.TextLength  <> 0 Then
      Button1.Enabled = True
Else
      Button1.Enabled = False
End If

Davvero semplice😀
Quindi il trucco (nel caso di più TextBox) sta nello scrivere il codice nell’evento TextChanged dell’ultima TextBox che ci interessa, e in più dobbiamo aggiungere per ogni TextBox che vogliamo: “And TextBoxCheCiInteressa.TextLength <> 0″.

Ovviamente al posto dei nomi TextBox1 e Button1 dovete scrivere il nome dei Vostri controlli.

Perfetto, ora passiamo al secondo problema: l’ora di Windows.
Tutti sapranno che per avere la data e l’ora di Windows bisogna scrivere qualcosa tipo:

Label1.Text = Date.Now.ToString

La proprietà Now mostrerà la data e l’ora in un preciso momento, ad esempio quando clicchiamo su un pulsante (quindi evento Click di un pulsante). Ma il brutto di questa cosa è che l’ora mostrataci rimarrà fissa al momento in cui abbiamo cliccato. Solo un altro click permetterà di aggiornare nuovamente l’ora, che tuttavia dopo il click rimarrà sempre la stessa a meno che non si clicchi un’altra volta e così via.
Per avere invece un orario aggiornato costantemente (quindi vedremo scorrere i secondi ecc.) bisogna agire in maniera diversa. Innanzitutto selezioniamo un controllo Timer e trasciniamolo sul Form. Nell’evento Load del nostro Form scriviamo:

Timer1.Enabled = True ‘Abilita il timer
Timer1.Interval = 1000 ‘Setta l’intervallo del timer a 1 secondo (1000 millisecondi)

Ok, ora nell’evento Tick del timer dobbiamo scrivere invece:

Label1.Text = TimeOfDay ‘Imposta l’ora nel testo della Label1

Ovviamente Label1 è un controllo usato per l’esempio, volendo possiamo scriverlo anche in una TextBox.

Spero che questa micro-guida possa essere utile a chi sta cercando una soluzione in merito ai problemi proposti.

Ciao!


Azioni

Information

4 responses

11 11 2007
pasqualeambrosio

Questo articolo mi è stato molto utile. E’ da poco che mi sono avvicinato a questo linguaggio di programmazione.

11 11 2007
Ago

Ciao Pasquale, sono contento che ti sia stato utile😀
Anche io non sono chissà a quale livello, anzi, però ho scritto quest’intervento perchè ci sono passato anche io e quindi so che per chi si è avvicinato da poco non è facile.

Ciao!

P.S. Se avessi qualche richiesta di codice o problemi col VB scrivilo così vedo di aiutare te o chi come te cerca un aiuto, nel limite di quello che riesco a fare perchè come già detto non sviluppo ancora applicazioni complesse o quantomeno di funzionamento un pò più “avanzato”.

8 01 2009
Marco Sena

Qusto è il miglior codice
Button1.Enabled = cbool(TextBox1.Text.Trim.Length)

8 01 2009
Sand

Ciao Marco, credo tu sia molto più preparato di me nell’ambito in questione, difatti non conoscevo questo tipo di codice nè tantomeno CBool.
Dovrei provare sul campo questo snippet, anche se… non ho capito a quale dei due esempi si applica!

Grazie per il contributo comunque😀

Lascia un commento

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione / Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione / Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione / Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione / Modifica )

Connessione a %s...