Login Registrati
Stai vedendo 24 articoli - dal 26 a 49 (di 49 totali)
  • Autore
    Articoli
  • #22395 Score: 0 | Risposta

    ElleEsse
    Partecipante

      scossa ha scritto:

      @ ElleEsse: ho provato il file che hai allegato e a me (Excel 2010) funziona perfettamente (ho solo rimosso il riferimento alla libreria PDF Creator mancante da me): scrollando le righe sono tutte correttamente marcate e la marcatura cambia regolarmente ad ogni selezione di riga.

      ciao Scossa

      grazie per il tempo che hai perso  

      io lo uso su macchina 8.1 ed Excel 2007

      l'ho provato su macchina con 10 ed Excel 2013

      macchine entrambe a 64 bit ed Excel entrambi a 32 bit

      il problema è lo stesso  

      tu hai fatto esattamente quanto descritto nell'esempio? ovvero sei andato su un conto della terza pagina hai clickato su un conto e tutti gli elementi delle pagine precedenti risultano correttamante marcati ?

      sarebbe ancora peggio di quanto ipotizzato  

       

      #22396 Score: 0 | Risposta

      scossa
      Partecipante
        37 pts

        Ciao,

        io ho cliccato su Gioco, poi ho spostato il cursore della listbox in basso e fatto click sulla voce 0277 e tutte le voci (controllato agendo sul cursore) erano correttamente marcate; poi sempre col cursore sono salito e fatto click sulla voce 0057(altrimenti afacendo pagina su o giù viene selezionata la riga 0054, tutte le righe hanno cambiato marcatura. Se premo Pagina Su o Pagina Giù, viene selezionata la riga e, di nuovo, tutte le voci vengono marcate.

        Excel 2010 su Win 7 64 bit, ris. grafica 1920 x 1080, visualizzazione su doppio monitor.

        #22397 Score: 0 | Risposta

        ElleEsse
        Partecipante

          scossa ha scritto:

          Ciao,

          grazie ancora

          non so che dire

          quindi a te mai risulta la situazione in figura, dove parte dei conti presentano - correttamente - il # identificativo del secondo click - e quindi aggiornamento del listbox -  ed altri l' * identificativo del primo aggiornamento del listbox   (lo stesso dopo il primo aggiornamento come nel caso dell'esempio quando alcuni presentano l' * e altri non hanno ancora alcuna segnatura)

          sono basito

          ps. perdonami se insisto, ma hai eseguito pedestremente quanto suggerito nell'esempio?

          - scroll clickando sulla barra laterale per andare sulla terza pagina

          - click su un conto della terza pagina

          - scroll singolo verso l'alto (quindi clickando sulla freccetta in alto) per salire verso l'alto

           

          #22400 Score: 0 | Risposta

          albatros54
          Moderatore
            89 pts

            ElleEsse ha scritto:

            boh..  sono duro di comprendonio e non capisco cosa vuoi farmi vedere

            o forse non è ben chiaro qual'è il problema

            che il tuo file , con il mio suggerimento ,funziona regolarmente

             

            Qual è il punto di avere gusti diversi, se non mostrare che i cervelli lavorano diversamente, che pensiamo diversamente? ( Alan Turing)
            Sempre il mare, uomo libero, amerai!
            ( Charles Baudelaire )
            #22404 Score: 0 | Risposta

            ElleEsse
            Partecipante

              albatros54 ha scritto:

              che il tuo file , con il mio suggerimento ,funziona regolarmente

              ma.. avevi provato ad usarlo così com'è originariamente e avevi riscontrato gli stessi problemi che riscontro io?

              la modifica che proponi tu non c'entra nulla - senza offesa e senza polemica

              #22405 Score: 0 | Risposta

              albatros54
              Moderatore
                89 pts

                per far girare il tuo file,io ho excel 2010,ho dovuto levare la spunta a due librerie che io non ho,levando la spunta a queste librerie, e lanciando sul tasto gioco, la listbox si presentava senza alcun segno sulla parte Sx dei vari record.Apportando le modifiche suggerite la listbox al primo avvio, si presentava con gli asterischi.

                 

                Qual è il punto di avere gusti diversi, se non mostrare che i cervelli lavorano diversamente, che pensiamo diversamente? ( Alan Turing)
                Sempre il mare, uomo libero, amerai!
                ( Charles Baudelaire )
                #22406 Score: 0 | Risposta

                ElleEsse
                Partecipante

                  albatros54 ha scritto:

                  per far girare il tuo file,io ho excel 2010,ho dovuto levare la spunta a due librerie che io non ho,levando la spunta a queste librerie, e lanciando sul tasto gioco, la listbox si presentava senza alcun segno sulla parte Sx dei vari record.Apportando le modifiche suggerite la listbox al primo avvio, si presentava con gli asterischi.

                  ma.. la prima volta è ovvio che si presenti senza * o altri simboli

                  ed è giusto che sia così - l'inizializzazione con la routine CaricaLBConti non prevede alcuna marcatura in quanto non è stato ancora effettuato alcun intervento

                  il problema è nella fase di refresh a video dopo l'aggiornamento della lista - successivo ad ogni click - attraverso la routine AggiornaLBConti()

                  la routine inserisce un carattere alla sinistra dei conti, ma quando il controllo ritorna all'interfaccia utente non tutti i conti presentano quello stesso carattere

                  #22409 Score: 0 | Risposta

                  scossa
                  Partecipante
                    37 pts

                    "ps. perdonami se insisto, ma hai eseguito pedestremente quanto suggerito nell'esempio?

                    - scroll clickando sulla barra laterale per andare sulla terza pagina

                    - click su un conto della terza pagina

                    - scroll singolo verso l'alto (quindi clickando sulla freccetta in alto) per salire verso l'alto"

                    Scusa, hai ragone! se mi muovo di un singolo click ho dei vuoti, ma è chiaramente un problema di visualizzazione in qunto i dati nella list sono corretti, infatti se aggiungi queste righe prima della fine della sub LBConti_Click()

                    Dim vIdx As Variant
                    For vIdx = 0 To LBConti.ListCount - 1
                      Debug.Print LBConti.List(vIdx, 3) & ": "; LBConti.List(vIdx, 0)
                      If Trim(LBConti.List(vIdx, 0)) = "" Then MsgBox LBConti.List(vIdx, 3) & " vuoto!"
                    Next
                    

                    vedrai che tutte le righe sono valorizzate con il carattere di marcatura.

                    #22412 Score: 0 | Risposta

                    ElleEsse
                    Partecipante

                      scossa ha scritto:

                      Scusa, hai ragone! se mi muovo di un singolo click ho dei vuoti, ma è chiaramente un problema di visualizzazione in qunto i dati nella list sono corretti, infatti se aggiungi queste righe prima della fine della sub LBConti_Click()

                      ciao Scossa

                      scusa ma anche aggiungendo quel codice alla fine della LBConti_Click() continuo ad avere lo stesso e medesimo problema  

                      se aziono GIOCO, scendo di qualche pagina, clicko un conto, risalgo alla pagina precedente, continuo a trovare dei conti senza la marcatura

                      riallego il file con la modifica da te suggerita.. magari ho sbagliato qualcosa..

                       

                      Allegati:
                      You must be logged in to view attached files.
                      #22414 Score: 0 | Risposta

                      ElleEsse
                      Partecipante

                        scossa ha scritto:

                        Scusa, hai ragone! se mi muovo di un singolo click ho dei vuoti, ma è chiaramente un problema di visualizzazione in qunto i dati nella list sono corretti

                        .. e quando affermi che dovrebbe trattarsi chiaramente di un problema di visualizzazione - affermazione su cui concordo pienamente visto che il codice non viene più eseguito e quindi il problema è tutto nella gestione automatica del list box fatta da VB - lo dici perchè hai già avuto modo di riscontrare anomalie del genere?

                         

                        #22416 Score: 0 | Risposta

                        scossa
                        Partecipante
                          37 pts

                          cit ElleEsse "scusa ma anche aggiungendo quel codice alla fine della LBConti_Click() continuo ad avere lo stesso e medesimo problema"

                          quell'aggiunta non era una patch al codice ma serviva solo per dimostrare che i valori della listbox vengono correttamente aggiornati.

                          Quindi nel tuo codice dovresti correggere

                          ' modifica proposta da scossa per ovviare al problema di refresh

                          in

                          ' modifica proposta da scossa per mostrare che la list viene correttamente aggiornata

                           

                          cit "indi il problema è tutto nella gestione automatica del list box fatta da VB - lo dici perchè hai già avuto modo di riscontrare anomalie del genere?"

                          no, non mai riscontrato questo problema, tempo permettendo vedrò di approfondire la cosa.

                           

                          #22417 Score: 0 | Risposta

                          ElleEsse
                          Partecipante

                            scossa ha scritto:

                            quell'aggiunta non era una patch al codice ma serviva solo per dimostrare che i valori della listbox vengono correttamente aggiornati.

                            ah.. ok.. io che i valori del listbox fossero correttamente aggiornati lo davo per scontato dal momento che AggiornaLBConti() fa esattamente la stessa cosa per tutti i conti in elenco

                            così come il fatto che possa trattarsi di un problema di refresh del video

                            non conosco però approfonditamente VB e ignoro se esista qualche istruzione per rinfrescare anche le porzioni di schermo non immediatamente visualizzate (se poi aggiungo che nacqui col cics   )

                            #22418 Score: 0 | Risposta

                            ElleEsse
                            Partecipante

                              scossa ha scritto:

                              Quindi nel tuo codice dovresti correggere

                              ' modifica proposta da scossa per ovviare al problema di refresh

                              in

                              ' modifica proposta da scossa per mostrare che la list viene correttamente aggiornata

                              ah ah ah  

                              appurato che non si tratta di una patch, la tolgo proprio completamente  

                              #22419 Score: 0 | Risposta

                              scossa
                              Partecipante
                                37 pts

                                Comunque dovresti risolvere con queste 3 righe

                                indLBConti = LBConti.TopIndex
                                LBConti.TopIndex = LBConti.ListCount - 10
                                LBConti.TopIndex = indLBConti

                                da aggiungere in fondo alla tua routine, che riporto completa:

                                Private Sub LBConti_Click()
                                
                                Dim indLBConti As Long
                                
                                If flPopUp Then Call PopUpEvento("LBConti_Click()")
                                
                                If hdNoDevFl Then Exit Sub
                                
                                hdNoDevFl = True
                                indLBConti = LBConti.ListIndex
                                hdCVCtoVceSel = "C"
                                hdRiCtoVceSel = LBConti.List(indLBConti, 1)
                                hdIdCtoVceSel = LBConti.List(indLBConti, 2)
                                If hdRiCtoVceSel = 0 Then
                                   ' E' STATA SELEZIONATA UNA RIGA DI RAGGRUPPAMENTO
                                   LBConti.ListIndex = -1
                                Else
                                   ' E' STATO SELEZIONATA UNA RIGA CORRISPONDENTE AD UN CONTO: SI INCREMENTA IL SALDO DI 10
                                   ' si verifica dapprima che alla riga i-esima ci sia effettivamente il conto indicato sul movimento
                                   If Sheets(shCto).Cells(hdRiCtoVceSel, 1) <> hdIdCtoVceSel Then
                                      Call OrroreCtoVce(shCto, hdRiCtoVceSel, hdIdCtoVceSel)
                                      End
                                   End If
                                   ' SI INCREMENTA NTA IL SALDO DI 10
                                   Sheets(shCto).Cells(hdRiCtoVceSel, 15) = Sheets(shCto).Cells(hdRiCtoVceSel, 15) + 10
                                   ' SI PROCEDE CON L'AGGIORNAMENTO DI LBConti
                                   AggiornaLBConti
                                   LBConti.ListIndex = LBConti.ListIndex
                                End If
                                
                                hdNoDevFl = False
                                indLBConti = LBConti.TopIndex
                                LBConti.TopIndex = LBConti.ListCount - 10
                                LBConti.TopIndex = indLBConti
                                
                                End Sub
                                #22422 Score: 0 | Risposta

                                ElleEsse
                                Partecipante

                                  scossa ha scritto:

                                  Comunque dovresti risolvere con queste 3 righe

                                  indLBConti = LBConti.TopIndex LBConti.TopIndex = LBConti.ListCount - 10
                                  LBConti.TopIndex = indLBConti

                                  da aggiungere in fondo alla tua routine, che riporto completa:

                                  avevo già provato qualcosa del genere - se non ricordo male impostavo temporanemante il TopIndex a (ListCount-1) e comunque il problema si presentava clickando su uno degli ultimi conti

                                  però.. non funziona  

                                  se vai a modificare uno dei conti dell'ultima porzione - io per esempio ho clickato sullo 0342 - scrollando poi verso l'alto si ripresenta il solito problema

                                   

                                  #22423 Score: 0 | Risposta

                                  scossa
                                  Partecipante
                                    37 pts

                                    cit:

                                    se vai a modificare uno dei conti dell'ultima porzione - io per esempio ho clickato sullo 0342 - scrollando poi verso l'alto si ripresenta il solito problema

                                    vero, però ci vuole poco a sistemare: aggiungi un scroll up con LBConti.TopIndex = 1 :

                                    indLBConti = LBConti.TopIndex
                                    LBConti.TopIndex = LBConti.ListCount - 10
                                    LBConti.TopIndex = 1
                                    LBConti.TopIndex = indLBConti

                                     

                                    #22425 Score: 0 | Risposta

                                    ElleEsse
                                    Partecipante

                                      .. forse però alla fine ho trovato l'artifizio lavorando sul suggerimento di scossa  

                                      indLBConti = LBConti.TopIndex
                                      LBConti.TopIndex = 0
                                      LBConti.TopIndex = LBConti.ListCount
                                      LBConti.TopIndex = indLBConti

                                      così parrebbe risolvere (ed avrebbe anche un minimo senso )

                                      #22426 Score: 0 | Risposta

                                      ElleEsse
                                      Partecipante

                                        scossa ha scritto:

                                        cit:

                                        eh eh

                                         

                                        stavo scrivendo una cosa simile  

                                        #22427 Score: 0 | Risposta

                                        ElleEsse
                                        Partecipante

                                          @scossa

                                          approfitterei ancora di Te per un'altra curiosità

                                          se volessi deselezionare l'elemento appena clickato una volta fatto l'incremento e ricaricato il listbox.. cosa suggerisci?

                                          #22430 Score: 0 | Risposta

                                          scossa
                                          Partecipante
                                            37 pts

                                            se volessi deselezionare l'elemento appena clickato una volta fatto l'incremento e ricaricato il listbox.. cosa suggerisci?

                                            per "deselezionarlo" puoi usare la proprietà .Selected o .Value, ma la riga resterà comunque "evidenziata".

                                            #22431 Score: 0 | Risposta

                                            ElleEsse
                                            Partecipante

                                              scossa ha scritto:

                                              per "deselezionarlo" puoi usare la proprietà .Selected o .Value, ma la riga resterà comunque "evidenziata".

                                              effettivamente con "deselezionarlo" intendevo togliere l'evidenza a video

                                              non sai se c'è qualche artifizio - senza svuotare e ricaricare exnovo il listbox ?

                                              #22432 Score: 0 | Risposta

                                              scossa
                                              Partecipante
                                                37 pts

                                                Non credo si possa nelle listbox a selezione singola, solo in quelle a selezione multipla.

                                                #22433 Score: 0 | Risposta

                                                ElleEsse
                                                Partecipante

                                                  scossa ha scritto:

                                                  Non credo si possa nelle listbox a selezione singola, solo in quelle a selezione multipla.

                                                  dovessi trovare il modo.. fammelo sapere

                                                  #22586 Score: 0 | Risposta

                                                  ElleEsse
                                                  Partecipante

                                                    non avevo classificato come Risolto in quanto in ogni caso il problema del mancato refresh a video da parte di VB rimaneva...

                                                    purtroppo però anche il suggerimento implementato grazie a scossa talvolta non sortisce completamente l'effetto sperato: accade che proprio l'elemento click-ato - che quindi poi rimane evidenziato - non venga rinfrescato

                                                    bah.. ribadisco che non si tratta di problema vitale   però è comunque fastidioso

                                                  Login Registrati
                                                  Stai vedendo 24 articoli - dal 26 a 49 (di 49 totali)
                                                  Rispondi a: REFRESH ListBox
                                                  Gli allegati sono permessi solo ad utenti REGISTRATI
                                                  Le tue informazioni: