Newsgroup: it.comp.appl.access
Titolo: LAMPEGGIAMENTO ETICHETTA

Salve a tutti,
Ho una tabella "TABELLA_1" con il campo testo "NOME"
Ho una maschera "MASCHERA_1" che mi permettere di inserire /modificare i
dati 
   di "TABELLA_1" , che possiede la casella di testo "NOME" e accanto ad
essa 
   ho inserito una etichetta chiamata "ALLARME"
la maschera č in visualizzazione "maschera continua"
Quello che voglio fare č questo, nel momento in cui nella casella di testo
"NOME" scrivo "PIPPO" l'etichetta "ALLARME" comincia a lampeggiare
(lampeggia il testo "ESATTO !!!").
facendo in questa maniera:
*****************************************************
Ho impostato INTERVALLO TIMER = 500
e poi su evento timer della form il codice sotto
Private Sub Form_Timer()
If Me.NOME = "PIPPO" Then
  'Lampeggiamento etichetta "ALLARME"
   Me.Allarme.Visible = Not Me.Allarme.Visible
End If
End Sub
*****************************************************
  FINO QUI TUTTO OK !!!
la cosa che non mi piace č che se passo ad un record successivo e scrivo
un nome diverso e rimango in quel record il lampeggiamento del precedente
scompare (ovviamente), viceversa se clicco nel record precedente
l'etichetta mi lampeggia in entrambi i record e non deve essere cosi!
C'č una soluzione per far si che l'etichetta l'ampeggi o meno in funzione
del record proprio?
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it


allora fermo restando le difficoltà note di modifica di un controllo non 
associato in una maschera continua io potrei proporti luna soluzione 
"artigianale" con la  creazione di due caselle di controllo dove dentro ci 
scrivi ALLARME se è questo il testo che vuoi si legga nel momento un cui la 
tua condizione è verificata. Le due caselle avranno colore sfondo e colore 
primo piano come il corpo, senza bordi e aspetto piatto
per sicurezza sull' evento di caricamento della maschera scrivi
me.tuocontrollo1.backcolor=me.corpo.backcolor
me.tuocontrollo1.forecolor=me.corpo.backcolor
me.tuocontrollo2.backcolor=me.corpo.backcolor
me.tuocontrollo2.forecolor=me.corpo.backcolor
se qualcuno ti cambia il colore di sfondo della maschera non si vedono lo 
stesso
sulla formattazione condizionale del tuocontrollo1 metti [nome]="pippo" 
sfondo rosso carattere giallo
sulla formattazione condizionale del tuocontrollo2 metti [nome]="pippo" 
sfondo giallo carattere rosso (metti i colori che vuoi basta che siano 
diversi tra loro e tra le formattazioni dei due controlli)
nel timer scrivi
if me.tuocontrollo1.visible=true then
me.tuocontrollo1.visible=false
me.tuocontrollo2.visible=true
else
me.tuocontrollo1.visible=true
me.tuocontrollo2.visible=false
end if
a me l'effetto lo fa prova se ti va bene
ciao
max 

Se sei in visualizzazione maschere continue scordatelo...!
@Alex

 me.tuocontrollo2.forecolor=me.corpo.backcolor




Non mi è molto chiaro quello che hai scritto in particolare quando devo
inserire il nome "pippo"
Mi spiego meglio:
quello che io voglio e che nella prima casella di testo devo inserire un
nome (per esempio pippo che verifica la mia condizione)
accanto a questa casella di testo volevo mettere un'altra casella di testo
o etichetta che lampeggiasse un messaggio nel momentop in cui si verifica
la mia condizione
Nel tuo suggerimento non ho capito se:
1) tuoControllo 1 e 2  sono le etichette/caselle di testo che devono
essere sovrapposte
2) Dove scrivo il Nome per esempio pippo?
grazie e ciao



crea un etichetta sulla form, poi col tasto destro del del mouse cliccaci 
sopra e nel menu a tendina con la voce "Cambia In" trasforma l'etichetta in 
Casella di testo.
Imposta le seguenti proprieta':
Origine Controllo: =lampeggia("PIPPO")
formato: ;"ALLARME"
abilitato: NO
Adesso prendendo l'esempio di Silvio Savoldi postato sul sitocomune faq 
3.26, potresti fare cosi:
metti questa funzione nel modulo della form:
private function lampeggia(vtesto as string)
if me!nome ="pippo" then
   lampeggia=true
end if
end function
avendo settato l'intervallo del timer a 500, inserisci nell'evento timer 
della form:
private sub form_timer()
if lampeggia(me!nome) then
   me!NomeTua_etichetta_Allarme.visible = not 
me!NomeTua_etichetta_Allarme.visible
end if
end sub
-- 
Ciao
Geppo 

 ha scritto nel messaggio 
news:hqsg46$a76$1...@news.newsland.it...

le caselle di controllo alla fine saranno 3
una è la tua dove scrivi i tuoi dati (e quindi pippo lo scrivi là)
altre due sovrapposte tra di loro con la formattazione che ti ho detto che 
avendo lo stesso colore del fondo del corpo sia per il fondo che per il 
carattere non si vedono.
con la formattazione condizionale (se la TUA CASELLA è uguale a pippo" cambi 
carattere e fondo e quindi diventano visibili, con l'evento sul timer ne 
"spegni" una e "accendi" un'altra alternativamente dando l'effetto del 
lampeggio
spero che ora ti sia tutto chiaro
ciao
Max 

 ha scritto nel messaggio 
news:hr3mqt$7eg$1...@news.task.gda.pl...

puoi anche creare una sola casella con i colori di cui sopra e la 
formattazione condizionale e poi sull'evento timer cambi i colori a runtime 
tipo:
if me.tuacasella.formatcondition(0).backcolor = colore standard della 
formattazione condizionale then
me.tuacasella.formatcondition(0).backcolor = colore che prima era nel testo
me.tuacasella.formatcondition(0).forecolor = colore che prima era nello 
sfondo
else
al contrario
end if
ciao
max