Event TextBox.Change (gb.qt4)
Event Change ( )
Viene sollevato quando cambia il testo del controllo.
Questo evento viene generato per ogni lettera digitata oppure ogni volta che il programma scrive nella proprietà Text.
Esempio
PUBLIC SUB TextBox1_Change()
IF TextBox1.Text = "gray" THEN PictureBox1.Background = &H707070&
END
Se si desidera utilizzare questo evento per modificare il testo nello stesso
TextBox, questo gestore di eventi viene nuovamente sollevato.
Per evitare un overflow dello stack:
Esempi
PUBLIC SUB TextBox1_Change()
IF TextBox1.Text = "gray" OR TextBox1.Text = "grey" THEN
Object.Lock(TextBox1)
TextBox1.Text = "grey"
Object.Unlock(TextBox1)
ENDIF
END
-
Oppure usa un semaforo Boolean per impedire un secondo invio quando l'evento viene generato dal gestore eventi invece che mediante input manuale.
PUBLIC bRefreshing AS Boolean
PUBLIC SUB TextBox1_Change()
IF bRefreshing THEN RETURN
bRefreshing = TRUE
IF TextBox1.Text = "gray" OR TextBox1.Text = "grey" THEN
TextBox1.Text = "grey"
ENDIF
bRefreshing = FALSE
END