Visualizzazione dei risultati da 1 a 10 su 10
  1. #1

    [VB6] Sapere se un oggetto è stato caricato

    Ciao,

    ho un timer che dovrebbe sommarmi dei numeri contenuti in un oggetto list.

    Le varie list vengono create all'occorrenza tramite il comando load.

    Ricevo però errore, quando il mio timer, controlla un oggetto che non è stato caricato.

    Ho provato a fare un if, dicendo

    list(i).visible = true then
    'conta
    end if

    ma quando è il turno della list non caricata, mi da errore



    Come posso ovviare al problema?
    PIERCHI

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Non caricata in che senso? Semmai devi controllare il Count non il Visible
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #3
    Quote Originariamente inviata da oregon Visualizza il messaggio
    Non caricata in che senso? Semmai devi controllare il Count non il Visible
    Non caricata nel senso che magari non ho fatto

    load questotasto(i)



    Poi ad un evento click sul bottone, devo nascondere i "questotasto", solo che se non è stato caricato in memoria, da errore.



    Per ovviare, potrei caricare tutti i tasti, senza visualizzarli sul form. Ma era una soluzione poco elegante.


    ciao
    PIERCHI

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Scusa ma nel ciclo in cui utilizzi l'indice i in base a quale criterio lo incrementi?
    In un determinato momento dovresti sapere quanti sono i controlli caricati (in una apposita variabile che li conta) e quindi non dovresti fare assumere ad i un valore maggiore di questo contatore.

    In ogni caso, mostra il codice ....
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  5. #5
    Quote Originariamente inviata da oregon Visualizza il messaggio
    Scusa ma nel ciclo in cui utilizzi l'indice i in base a quale criterio lo incrementi?
    In un determinato momento dovresti sapere quanti sono i controlli caricati (in una apposita variabile che li conta) e quindi non dovresti fare assumere ad i un valore maggiore di questo contatore.

    In ogni caso, mostra il codice ....
    ciao, al momento sono a lavoro e non ho il codice.

    Ti spiego la situazione.

    - 100 command button creati tramite LOAD con indice prelevato da un array
    - Alla pressione di uno di questi bottoni, carico un frame tramite LOAD con indice uguale a quello del tasto premuto.


    Per poterli chiudere, faccio il for sull'array e chiudo tutti i frame.
    Però se per caso non ho premuto tutti i tasti, ovviamente, quando faccio il for per nascondere il frame non generato, mi da errore.


    Posso essere stato chiaro?
    PIERCHI

  6. #6
    non ti basta mettere a 1 l'indice di un array quando premi il bottone x? poi lo sfrutti in chiusura per controllare cosa hai aperto

  7. #7
    Quote Originariamente inviata da optime Visualizza il messaggio
    non ti basta mettere a 1 l'indice di un array quando premi il bottone x? poi lo sfrutti in chiusura per controllare cosa hai aperto
    In altre parole?

    Non ho ben capito...
    PIERCHI

  8. #8
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Oltre al suggerimento di otime, puoi anche fare che, quando clicchi sul tasto per creare l'oggetto, imposti il valore della sua proprietà Tag a 1

    Button(i).Tag = "1"

    Potrai controllare questo valore per sapere se l'oggetto è stato creato.

    Lo reimposterai quando l'oggetto sarà distrutto. Basterà un

    Button(i).Tag = ""
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  9. #9
    Quote Originariamente inviata da oregon Visualizza il messaggio
    Oltre al suggerimento di otime, puoi anche fare che, quando clicchi sul tasto per creare l'oggetto, imposti il valore della sua proprietà Tag a 1

    Button(i).Tag = "1"

    Potrai controllare questo valore per sapere se l'oggetto è stato creato.

    Lo reimposterai quando l'oggetto sarà distrutto. Basterà un

    Button(i).Tag = ""
    grazie per l'ottimo consiglio.

    Quando sarò a casa lo proverò!


    Ciao
    PIERCHI

  10. #10
    facendo così funziona benissimo
    PIERCHI

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.