Newsgroup: it.comp.lang.visual-basic
Titolo: informazione su controllo checkbox ..... !!!

ciao a tutti, ho inserito su una Form due controlli checkbox che hanno già
uno stato impostato. Quello che vorrei sapere è come fare per fare in modo
che l'utente non possa cambiarne lo stato facendo click sopra o in altro
modo. So bene che esiste la proprietà ENABLED che potrei impostare su False
per raggiungere la funzione che voglio, ma vorrei un'altra soluzione visto
che impostando tale proprietà su False i controlli diventano di colore
grigio chiaro e questo non è quello che vorrei.
grazie.

"pippo" ha scritto

Proprietà Locked?
Prova e dicci!(forse non è ciò che cerchi)!?!
SImo
--
__________________
www.sasim.net
* Server IRC : 
irc.azzurranet.org
 --> Canale: #it_lang_vb
* Sito Comune Ng: 
http://www.it-lang-vb.net
* Manifesto del Ng: 
http://www.it-lang-vb.net/docs/Manifesto.txt
* I vecchi messaggi su: 
http://groups.google.com/

Prova e dicci!(forse non è ciò che cerchi)!?!
simo, simo, in ginocchio sui ceci dietro la lavagna! (C)
La checbox non ha la proprieta' Locked.
Una possibile soluzione e' questa:
Private Sub Check1_Click()
    Static saveStack As Boolean
    If saveStack Then Exit Sub
    saveStack = True
    Check1.Value = 1 - Check1.Value
    saveStack = False
End Sub
-- 
ciao, hal
(C) copyright Fondazione Roal Zanazzi :-PP


Funzionare funziona. E qui finiscono tutte le sue qualità.:)
Fa quasi rimpiangere i goto...
Il punto è che se in questo evento va aggiunto un qualunque altro tipo di
codice, il tutto diventa un incubo. Con due livelli di ricorsione di cui uno
viene saltato sfruttando una variabile static. Almeno con un goto sarebbe
stato più leggibile:).
Questo non è quello che si definisce terse code...
D'altra parte va detto che il fatto che il cambio di valore scateni l'evento
click non aiuta..
Ed infine date le proprietà del controllo non mi viene in mente un altro
metodo per fare la stessa cosa in modo diverso; ciononostante direi che è
codice da prendere con le molle.
Ciao
Alfonso

 ha scritto nel messaggio
news:kO1%7.2955$cU4....@twister1.libero.it...


 wrote in message
a1io04$qqtg2$1...@ID-56381.news.dfncis.de...
| sasim ha scritto:
|
[SNIP]
|
| La checbox non ha la proprieta' Locked.
| Una possibile soluzione e' questa:
|
| Private Sub Check1_Click()
|     Static saveStack As Boolean
|     If saveStack Then Exit Sub
|     saveStack = True
|     Check1.Value = 1 - Check1.Value
|     saveStack = False
| End Sub
|
| --
| ciao, hal
|
*GASP*
Allucinante =)
In ogni caso, basta mettere la checkbox dentro ad un frame flat e no border
ed impostare la proprieta' Enabled del Frame a false. =)
Nel momento in cui si voglia abilitare la checkbox ed usufruire dei suoi
eventi, basta reimpostare Enabled del frame a true.
Lokar

Confermo!

 codice da prendere con le molle.
Moooolto con le molle :-P
Se i checkbox da bloccare individualmente non sono tanti, 
conviene in effetti il suggerimento del frame dato da Lukar
e Giorgio Farinetti.
-- 
ciao, hal
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

[SNIP]
| Se i checkbox da bloccare individualmente non sono tanti,
| conviene in effetti il suggerimento del frame dato da Lukar
| e Giorgio Farinetti.
|
| --
| ciao, hal
|
Lokar, thx =)


[cut]
Chiedo venia! Ho Confuso con ComboBox :((
PERDONOOOOOOOOOOOOOOO
simo
--
__________________
www.sasim.net

potresti usare una variabile booleana tipo PossoCliccare
Private Sub Check1_Click()
   if not PossoCliccare then exit sub
End Sub
per sbloccare il ceck box PossoCliccare = false
per sbloccare il ceck box PossoCliccare = true

oops mi sono dimenticato che dovresti ripristinare il valore del ceck
box e diventa tutto piu complicato e non ne vale la pena
forse conviene il frame
ciao Valerio
MandarX ha scritto:


 Lokar, thx =)
Oops, tragico orrore di stompa :-)


in effetti non ho considerato che a te non interessava il codice della
procedura ma la proprietą value
ciao Valerio

[SNIP]
grazie ragazzi per i consigli, ho optato per l'utilizzo del frame ... con
valore della proprietą enabled su False.



Private Sub Check1_MouseUp(...)
Check1.Value = Abs(Check1.Value - 1)
End Sub
Ciao