Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Form continua e righe che 'sbampolano' se cursore e' sopra di esse

78 views
Skip to first unread message

RobertoA

unread,
Sep 26, 2022, 4:49:25 AM9/26/22
to
Access 2013, 32bit, Windows 10 pro
Ho una form continua che appena aperta, se il cursore del mouse e' sopra
una delle righe corpo, le fa lampeggiare
E' come se l'esecuzione del codice venisse interrotta per far
lampeggiare la riga sopra la quale e' il cursore sel mouse
Spostando il cursore nella testata della form l'effetto scompare ed il
flusso del codice sembra riprendere normalmente
Mi rendo conto che la descrizione potrebbe non essere comprensibilissimo
e quindi ho preparato un minifilmato (password 1235)

https://imgur.com/zhdMk4o

Quando dico 'il flusso codice sembra riprendere' intendo l'effetto che
si vede alla fine del filmato dove appaiono i tasti colorati in basso,
appaiono solamente quando il cursore mouse viene spostato dalle righe
anche se da codice vengono colorati nel form load

Nella sezione 'corpo' nessun evento
Nelle textbox delle righe c'e' solo una funzione su evento doppio-click

Da cosa dipende il farfallio? Come eliminarlo?

PhilCattivocarattere

unread,
Sep 27, 2022, 4:25:19 AM9/27/22
to
Il giorno lunedì 26 settembre 2022 alle 10:49:25 UTC+2 RobertoA ha scritto:
> Access 2013, 32bit, Windows 10 pro
Hai provato su qualche altra postazione o VM per vedere se l'effetto è lo stesso?

> e quindi ho preparato un minifilmato (password 1235)
a me non ha chiesto alcuna pwd, per la cronaca

> Da cosa dipende il farfallio? Come eliminarlo?
Mah... io non ne ho idea, forse qualche esperto sa darti qualche indicazione più precisa.
Hai un avento Su Timer?
Riusciresti a mettere un demo supersemplificato in cui comunque si riscontra il problema?

@Alex

unread,
Sep 27, 2022, 5:17:41 AM9/27/22
to
Hai qualche F.C. su un controllo nell Form in modalità continua..?
Hai qualche evento su MouseMove...?
Hai una Label Non associata...?

@Alex

RobertoA

unread,
Sep 27, 2022, 5:22:32 AM9/27/22
to
Si, credo che il demo sia la robba mellio
Speravo nel colpo di genio di qualche buonanima
Ma mi sa che devo tagliare via e fare il demo

Simone Calligaris

unread,
Sep 27, 2022, 5:35:36 AM9/27/22
to

> Ma mi sa che devo tagliare via e fare il demo

Forse fai prima se inizi a sfrondare quella Form dalle varie features che certamente contiene, finchè non sparisce lo sfarfallio.
A quel punto capirai a cosa è dovuto.

Saluti

@Alex

unread,
Sep 27, 2022, 8:21:41 AM9/27/22
to
[+1]

@Alex

RobertoA

unread,
Sep 27, 2022, 11:17:07 AM9/27/22
to
Sul Form_Current ho un evento per colorare di giallo lo sfondo delle
textbox della riga, in sostanza evidenzia la riga corrente, ed e'
questo, gia' provato, se elimino la riga dentro Form_Current il problema
sbampolamento non c'e' piu', ma non c'e' neanche l'evidenziazione della riga
L'evidenziazione riga viene ottenuta tramite la Formattazione
Condizionale impostata su textbox e combobox della riga

Form_Current
dummy = Evidenzia("[ID_VENDRIGHE]", Me!ID_VENDRIGHE, Me.Form)

Inoltre ho preparato un minidemo con solamente le funzioni usate dalla
form incriminata, per i volenterosi che volessero darci un'occhiata e'
qua http://79.6.34.199:65080/AGGIORNAMENTI/lettura/test/

naturalmente sul demo, la cui unica schermata e le funzioni richiamate
sono IDENTICHE alla schermata vera del gestionale, il problema NON si
presenta
Ricapitolando, la stessa identica schermata del demo, sulla stessa
tabella dati del demo, le poche funzioni presenti nel demo, non danno il
problema lamentato dello sfarfallamento righe che si vede nel video,
mentre le analoghe sul gestionale danno l'effetto indesiderato dello
sfarfallamento righe come si vede nel video

Questo fatto che dentro al gestionale faccia il problema, mentre fuori
su file separato non lo faccia, mi disorienta un pochetto, perche' il
codice/controlli della form e le funzioni usate sono identiche

Netx step: mettere cero a san Peppino :)
(chissa' se esiste un santo specifico per i programmatori)


Simone Calligaris

unread,
Sep 27, 2022, 2:27:40 PM9/27/22
to

> Questo fatto che dentro al gestionale faccia il problema, mentre fuori
> su file separato non lo faccia, mi disorienta un pochetto

Togli dalla form (una sua copia) qualche oggetto visuale, un pò di codice, questo e quell'altro, fino a quando lo sfarfallio scompare.
A quel punto capirai cosa lo causa.

Saluti

P:S: Ma hai provato a reimportare tutto in un nuovo accdb?


PhilCattivocarattere

unread,
Sep 28, 2022, 12:23:32 AM9/28/22
to
Il giorno martedì 27 settembre 2022 alle 17:17:07 UTC+2 RobertoA ha scritto:
> ... se elimino la riga dentro Form_Current il problema
> sbampolamento non c'e' piu'
sembra quindi che sia lì che bisogna concentrarsi.

> Inoltre ho preparato un minidemo con solamente le funzioni usate dalla
> form incriminata
> ... il problema NON si presenta
utilità del demo prossima al nulla quindi, se poi aggiungiamo che non compila...
Però dà l'occasione di vedere qualcosa di orribile: la mancanza di Option Explicit.
Poi ci sono API e tante belle cose. Insomma... tu lo capisci quel codice, io non inizio nemmeno a guardarlo se non compila.

@Alex

unread,
Sep 28, 2022, 2:11:58 AM9/28/22
to
Il giorno martedì 27 settembre 2022 alle 17:17:07 UTC+2 RobertoA ha scritto:
La Routine EVIDENZIA, proveniente da un demo di Silvio, secondo me NON SERVE nel tuo caso... anzi è quella che probabilmente genera il FLIKERING in quanto distrugge e ricostruisce a RUNTIME la F.C. e secondo me non serve.

Posto che da me non genera il problema.

Per evidenziare la RIGA corrente, non serve tutto questo, basta mettere un controllo nell'intestazione della maschera con Origine Controllo il Controllo associato al Campo [ID_VENDITEALBANCORIGHE] e nella F.C. dei controlli la attivi quando il controllo di Confronto(non l'ho trovato perchè chiami campi e controlli differenti e non avevo tempo di cercarlo) è uguale alla TextBox Fittizia.

P.S. perchè chiami i controlli con NOMI diversi dai Campi...? E' una abitudine terribile... è così comodo avere riferimenti UGUALI tra NomeCampo e NomeControllo soprattutto nei Cicli...!

@Alex

RobertoA

unread,
Sep 28, 2022, 3:50:07 AM9/28/22
to
Ora compila


RobertoA

unread,
Sep 28, 2022, 4:31:38 AM9/28/22
to
".. secondo me NON SERVE nel tuo caso..."
Si ok, se trovo una routine piu' semplice adottero' altro sistema

".. basta mettere un controllo nell'intestazione della maschera.."
Sostanzialmente e' la stessa cosa che succede adesso
Nella corpo c'e' una txtEvidenzia che col suo contenuto, aggiornato
dentro la funzione 'evidenzia' verifica oppure no il confronto della FC
di ogni textbox, se confronto verificato allora ingialla

"..P.S. perchè chiami i controlli con NOMI diversi dai Campi.."
Di solito ai controlli nel corpo assegno il nome del campo, ci aggiungo
'riga' per distinguere la txtCodiceArticolo presente sulla testata della
form dalla txtCodiceArticoloRiga presente sul corpo

Quello che mi sembra davvero molto strano e' il comportamento diverso
tra demo e form reale dentro al gestionale, le form sono IDENTICHE, la
tabella dati in locale e' identica, il codice che viene richiamato dalle
varie funzioni e' identico, ma funzionano in modo diverso

E soprattutto non riesco a riprodurlo nel demo, e quindi mi sa che
bisogna andarci giu' pesante coi ceri a sa Peppiniello


Simone Calligaris

unread,
Sep 28, 2022, 5:06:55 AM9/28/22
to

> Quello che mi sembra davvero molto strano e' il comportamento diverso
> tra demo e form reale dentro al gestionale, le form sono IDENTICHE, la
> tabella dati in locale e' identica, il codice che viene richiamato dalle
> varie funzioni e' identico, ma funzionano in modo diverso

Hai seguito i consigli dei post precedenti?

E prima ancora:
1- Hai reimportato il progretto in nuovo .Accdb?
2- In alternativa, hai provato a copiare/incollare tutti gli Oggetti/Codice in nuova Form?

In passato ho incontrato situazioni simili in Forms su cui, nel tempo, avevo lavorato molto (cancellando e ricreando tanti oggetti).
Reimportando o ricreando ex novo la Form, tutto si sistemava.
Magari non è il caso tuo, ma almeno prova.

Saluti

RobertoA

unread,
Sep 28, 2022, 5:15:27 AM9/28/22
to
Si, provato, il progetto principale viene esportato su singoli file di
testo e reimportato periodicamente
Ma sfortunatamente, in questo caso, non influisce sul problema

Simone Calligaris

unread,
Sep 28, 2022, 5:20:11 AM9/28/22
to

> Ma sfortunatamente, in questo caso, non influisce sul problema

Secondo me se non provi a "smontarla" pezzo per pezzo non trovi l'inghippo.

Saluti

RobertoA

unread,
Sep 28, 2022, 5:25:17 AM9/28/22
to
Veramente l'inghippo e' chiaro dipenda dalla chiamata della funzione
Evidenzia() che avviene nel Form_Current
Se rem-mo quella riga lo sfarfallio scompare
Il vero problema e' capire il motivo per cui la chiamata alla funzione
faccia sfarfallare a quel modo, e' come se il codice 'sentisse' la
presenza del cursore (la freccina a video del mouse) sopra le righe del
corpo, anche se non c'e' nessun evento destinato a sentire la posizione
cursore



Simone Calligaris

unread,
Sep 28, 2022, 5:31:39 AM9/28/22
to

> Veramente l'inghippo e' chiaro dipenda dalla chiamata della funzione
> Evidenzia() che avviene nel Form_Current

Ok, s'è capito!!
Ma se nel Demo funziona e nell'orginale NO, è chiaro che *l'inghippo* esiste e sta da qualche altra parte.
Quindi, smontala a pezzi finchè non individui cosa infastidisce la formattazione condizionale (che poi sia migliorabile come ti fa notare Alex è un altro discorso).

Ma prima, ricrea la Form da zero e incollaci tutto quanto: non è la stessa cosa che reimportare in nuovo file e non credo tu l'abbia provato.

Saluti

RobertoA

unread,
Sep 28, 2022, 11:38:52 AM9/28/22
to
E provata pure questa
La form nuova, con copiati dentro i controlli ed il codice, nel
programma principale mostra il solito sfarfallamento
Copiata la form sul programma demo, non mostra anomalie
Credo che fra poco mi arrendo

Simone Calligaris

unread,
Sep 28, 2022, 12:36:07 PM9/28/22
to

> E provata pure questa
> La form nuova, con copiati dentro i controlli ed il codice, nel
> programma principale mostra il solito sfarfallamento
> Copiata la form sul programma demo, non mostra anomalie
> Credo che fra poco mi arrendo

E' no, adesso siamo curiosi pure noi di capire: l'arresa non è contemplata!
Dai, smontala un pezzetto per volta fino a che ... ne resterà soltanto uno (e continuerà a sfarfallare).

Saluti ;-)

RobertoA

unread,
Sep 29, 2022, 12:11:16 PM9/29/22
to
Veramente e' quello che ho fatto con la schermata demo
Ho tolto via tutto il superfluo
Schermata demo su programma demo NON appare problema
Schermata demo su programma completo sfarfalla
Essendo molto corposo il programma principale forse qualche modulo
conterra' qualcosa che fa sfarfallare alcune form
Pure a me piace pensare che che l'arresa non sia comtemplata
Ma quando e' troppo e' troppo, non posso spendere giornate alla caccia
di un problema che in effetti e' solamente estetico

0 new messages