Autore Topic: Eventi in una TabStrip  (Letto 1887 volte)

Offline tornu

  • Gran Maestro dei Gamberi
  • *****
  • Post: 855
    • Mostra profilo
Eventi in una TabStrip
« il: 28 Giugno 2008, 23:48:06 »
Buonasera a tutti,
una domanda sulle proprietà della TabStrip, sto cercando di ottenere la seguente funzione ma non riesco,:muro:  :muro:  esempio:

TabStrip1 attiva
TextBox1.Text = "Prova1"

TabStrip2 attiva
TextBox2.Text = ""

TabStrip1 non attiva
TextBox1.Text = ""

TabStrip2 attiva
TextBox2.Text = "Prova2"
 
suggerimenti??
Il software è come il sesso, è meglio quando è libero. (Linus Torvalds)

Offline leo72

  • Amministratore
  • Senatore Gambero
  • *****
  • Post: 2.163
    • Mostra profilo
    • http://www.leonardomiliani.com
Re: Eventi in una TabStrip
« Risposta #1 il: 29 Giugno 2008, 12:07:33 »
Mi viene in mente di usare l'evento Click() sulla TabStrip e di verificare con un SELECT CASE la proprietà Text() della TabStrip stessa e modificare di conseguenza il TextBox:
Codice: [Seleziona]

PUBLIC SUB TabStrip1_Click()

   SELECT CASE TabStrip1.Text
     CASE "Linguetta 1"
       TextBox1.Text = "Eccomi"
     CASE "Linguetta 2"
       TextBox1.Text = ""
   END SELECT

END
Visita il mio sito personale: http://www.leonardomiliani.com

Offline tornu

  • Gran Maestro dei Gamberi
  • *****
  • Post: 855
    • Mostra profilo
Re: Eventi in una TabStrip
« Risposta #2 il: 01 Luglio 2008, 00:43:11 »
Ho provato l'esempio che mi hai postato ma non funziona, nella TextBox non avviene nessun cambiamento.
Visto che comunque l'evento click e comune e senza distinzione a prescindere dal numero delle Tab, non c'è nessun modo per identificarle in modo univoco?
Il software è come il sesso, è meglio quando è libero. (Linus Torvalds)

Offline Ceskho

  • Amministratore
  • Senatore Gambero
  • *****
  • Post: 3.778
  • Vi Veri Veniversum Vivus Vici
    • Mostra profilo
    • Pagina Personale
Re: Eventi in una TabStrip
« Risposta #3 il: 01 Luglio 2008, 13:06:34 »
potresti assegnare un valore ad una variabile (ad esempio di nome num_tab) diverso a seconda del tab su cui si ha il click del mouse....quindi poi leggendo il valore della variabile tab_num risali a quale di essa è stata premuta e resa attiva....l'ho buttata lì....potresti comunque provare....

Offline Pixel

  • Amministratore
  • Maestro Gambero
  • *****
  • Post: 414
    • Mostra profilo
    • http://www.gambas-it.org
Re: Eventi in una TabStrip
« Risposta #4 il: 01 Luglio 2008, 14:00:52 »
Codice: [Seleziona]

TabStrip1 attiva
TextBox1.Text = "Prova1"

TabStrip2 attiva
TextBox2.Text = ""

TabStrip1 non attiva
TextBox1.Text = ""

TabStrip2 attiva
TextBox2.Text = "Prova2"

Onestamente non ho capito se per TabStrip1 e TabStrip2 intendi due oggetti distinti o due linguette della medesima TabStrip

Nel primo caso
Codice: [Seleziona]

PUBLIC SUB TabStrip1_GotFocus()
TextBox1.Text = "Prova1"
TextBox2.Text = ""
END

PUBLIC SUB TabStrip2_GotFocus()
TextBox1.Text = ""
TextBox2.Text = "Prova2"
END


Nel secondo caso usa l'oggetto Timer, abilitalo ed inserisci un codice simile a questo:

Codice: [Seleziona]

PUBLIC SUB Timer1_Timer()
SELECT CASE TabStrip1.Index
CASE 0
TextBox1.Text = "Prova1"
TextBox2.Text = ""
CASE 1
TextBox1.Text = ""
TextBox2.Text = "Prova2"
END SELECT


Ciao
Ubuntu Italian Member Ubuntu User 4683
Il mio Blog

Offline Ceskho

  • Amministratore
  • Senatore Gambero
  • *****
  • Post: 3.778
  • Vi Veri Veniversum Vivus Vici
    • Mostra profilo
    • Pagina Personale
Re: Eventi in una TabStrip
« Risposta #5 il: 01 Luglio 2008, 17:07:25 »
ehi pixel posso chiederti perchè nel secondo esempio hai inserito il codice in una routine timer per favore?

Offline Pixel

  • Amministratore
  • Maestro Gambero
  • *****
  • Post: 414
    • Mostra profilo
    • http://www.gambas-it.org
Re: Eventi in una TabStrip
« Risposta #6 il: 01 Luglio 2008, 18:29:18 »
Citazione

Ceskho ha scritto:
ehi pixel posso chiederti perchè nel secondo esempio hai inserito il codice in una routine timer per favore?

Perchè in questo modo l'oggetto timer verifica continuamente quale linguetta della TabStrip sia abilitata e di conseguenza ne restituisce lo stato.
Se ne potrebbe anche fare a meno inserendo il codice all'interno dell'evento click della TabStrip stessa, ma siccome io non sono un bravo programmatore come alcuni utenti di questo forum, il primo esempio che mi è venuto in mente è stato quello :-D

Ciao
Ubuntu Italian Member Ubuntu User 4683
Il mio Blog

Offline leo72

  • Amministratore
  • Senatore Gambero
  • *****
  • Post: 2.163
    • Mostra profilo
    • http://www.leonardomiliani.com
Re: Eventi in una TabStrip
« Risposta #7 il: 02 Luglio 2008, 00:07:58 »
Uhm... avevo capito che volevi operare sulle linguette, scusa...
Boh, potresti verificare quale delle due ha il focus.
Magari le poni appartenenti allo stesso group e poi verifichi con LAST.Text nell'evento GotFocus()  quale ha preso il focus, cioè quale è attiva.
Visita il mio sito personale: http://www.leonardomiliani.com

Offline tornu

  • Gran Maestro dei Gamberi
  • *****
  • Post: 855
    • Mostra profilo
Re: Eventi in una TabStrip
« Risposta #8 il: 02 Luglio 2008, 00:28:02 »
Citazione

Onestamente non ho capito se per TabStrip1 e TabStrip2 intendi due oggetti distinti o due linguette della medesima TabStrip


Scusate se non sono stato chiaro, il mio quesito era rivolto ad due "linguette" della medesima TabStrip.
Appena posso faccio delle prove con le indicazioni che mi avete dato, per il momento grazie.
Il software è come il sesso, è meglio quando è libero. (Linus Torvalds)

Offline tornu

  • Gran Maestro dei Gamberi
  • *****
  • Post: 855
    • Mostra profilo
Re: Eventi in una TabStrip
« Risposta #9 il: 02 Luglio 2008, 00:37:17 »
Citazione

leo72 ha scritto:
Uhm... avevo capito che volevi operare sulle linguette, scusa...


Non devi scusarti, hai capito bene.

Approfitto per farti una domanda anche se non inerente questo post, ogni tanto nelle tue risposte al forum citi la proprietà Group, potresti in poche parole spiegarmi la sua funzione.
grazie
Il software è come il sesso, è meglio quando è libero. (Linus Torvalds)

Offline leo72

  • Amministratore
  • Senatore Gambero
  • *****
  • Post: 2.163
    • Mostra profilo
    • http://www.leonardomiliani.com
Re: Eventi in una TabStrip
« Risposta #10 il: 02 Luglio 2008, 09:10:03 »
1) per il tuo problema del TabStrip, prova ad usare la proprietà Current, che si riferisce alla linguetta corrente: TabStrip1.Current.Text contiene il testo della linguetta selezionata.

2) La proprietà Group serve a creare un gruppo di controlli, a cui poi accedi all'ultimo con LAST. E' comodo ad esempio se hai diversi widget identici che svolgono azioni simili. Ad esempio Textbox, RadioButton ecc...
Visita il mio sito personale: http://www.leonardomiliani.com