NASCONDERE MASCHERA DI ACCESSO AD UN DATABASE

di il
11 risposte

NASCONDERE MASCHERA DI ACCESSO AD UN DATABASE

Buongiorno a tutti.
Ho realizzato una maschera di accesso contenente dei pulsanti che comandano l'apertura di altre maschere.
Il problema che però vi sottopongo ed al quale non sto trovando la soluzione, è il seguente:
io vorrei che una volta effettuata la scelta, avendo cioè scelto di aprire una determinata maschera, la maschera di accesso si portasse in icona in modo da non rimanere a parziale copertura di quella aperta.
Viceversa, nel momento della chiusura della maschera precedentemente scelta, la maschera di accesso deve ritornare in primo piano in modo da consentire una nuova scelta tra le maschere disponibili.

Spero di essere stato chiaro nell'esposizione del problema.

Resto in atteso di gentile riscontro.

Riccardo.

11 Risposte

  • Re: NASCONDERE MASCHERA DI ACCESSO AD UN DATABASE

    Ai pulsanti della maschera di accesso aggiungi alla fine:
            Me.Visible = False
            DoCmd.OpenForm "MacheraDaRichiamare"
    
    Al pulsante di chiusura della maschera scelta inserisci prima del Close:
            DoCmd.SelectObject acForm, "MascheraDiAccesso", False
            Forms!MascheraDiAccesso.Visible = true
            DoCmd.SelectObject acForm, "MascheraScelta", False
            'e dopo...
            DoCmd.Close
    
    Ciao.

    Alex66
  • Re: NASCONDERE MASCHERA DI ACCESSO AD UN DATABASE

    Ti ringrazio, sei sempre efficientissimo e puntuale.
    Dunque.....ho apportato le modifiche da te suggerite; la prima parte funziona perfettamente nel senso che nel momento della scelta, nella maschera di accesso, la maschera da aprire ( chiamamola maschera A), quest'ultima si apre e la maschera di accesso sparisce.
    Un pò meno chiaro invece ( a me ) risulta l'altra parte di codice, quella cioè che mi fa ricomparire la maschera di accesso alla chiusura della maschera A.
    Ti spiego cosa ho fatto io: ho creato un bottone e gli ho inserito, al click, il codice da te suggerito. Al click non mi si chiude la maschera A , mi si ripresenta la maschera di accesso ma con un errore di run-time ed il messaggio: impossibile trovare la maschera " MascheradiAccesso".

    Dove sto sbagliando?

    Grazie
  • Re: NASCONDERE MASCHERA DI ACCESSO AD UN DATABASE

    Forse perché "MascheradiAccesso" è invisibile (non scherzo
  • Re: NASCONDERE MASCHERA DI ACCESSO AD UN DATABASE

    Hai ragione. Forse perché la maschera è invisibile (non scherzo ).

    Prova a togliere il primo SelecObject.

    Se continua a non funzionare però devo capire se la maschera di accesso ti serve aperta perché ci sono dei dati che usi nella procedura oppure no.

    Alex66
  • Re: NASCONDERE MASCHERA DI ACCESSO AD UN DATABASE

    Scusami ma questa tua risposta proprio non la capisco.....mi stai dicendo che è corretto quel messaggio di errore?
    Sai, non essendo un programmatore, ti chiedo gentilmente un pò piu di pazienza spiegandomi in una maniera più chiara ( se vuoi, naturalmente).

    Altrimenti, se hai poco tempo da dedicarmi, lascia pure perdere e speriamo che qualcun altro si faccia avanti.

    Grazie
  • Re: NASCONDERE MASCHERA DI ACCESSO AD UN DATABASE

    Scusa ma avaveo risposto ad una tua risposta che era incompleta. Ti chiedo scusa!!!!
  • Re: NASCONDERE MASCHERA DI ACCESSO AD UN DATABASE

    Ora ti spiego meglio: quando scelgo di aprire la maschera A dalla maschera di accesso, è corretto quest'ultima sparisca ma nel momento che chiudo la maschera A ( e si deve chiudere) la maschera di accesso mi si deve riaprire perchè io potrei avere necessita di aprire la maschera B o la Maschera C o semplicemente chiudere il database.....

    Spero di aver risposto alla tua domanda
  • Re: NASCONDERE MASCHERA DI ACCESSO AD UN DATABASE

    beasissi ha scritto:


    Ora ti spiego meglio: quando scelgo di aprire la maschera A dalla maschera di accesso, è corretto quest'ultima sparisca ma nel momento che chiudo la maschera A ( e si deve chiudere) la maschera di accesso mi si deve riaprire perchè io potrei avere necessita di aprire la maschera B o la Maschera C o semplicemente chiudere il database.....

    Spero di aver risposto alla tua domanda
    Allora non ti serve che rimanga aperta ad icona oppure invisibile.

    Quindi, molto semplicemente:

    da pulsante scelta maschera A-B.. ecc. della maschera di accesso:
    
    DoCmd.OpenForm "MascheraA"
    DoCmd.SelectObject acForm, "MascheraAccesso", False
    DoCmd.Close
    
    da pulsante di chiusura della maschera A-B:
    
    DoCmd.OpenForm "MascheraAccesso"
    DoCmd.SelectObject acForm, "MascheraA", False
    DoCmd.Close
    
    Prova e fammi sapere.

    Ciao.

    Alex66
  • Re: NASCONDERE MASCHERA DI ACCESSO AD UN DATABASE

    Grandisssimooo!!! Funziona perfettamente.

    Ma senti un pò ...come si fa ad imparare bene cosi come fai tu?
    Hai fatto qualche corso ? se si, quali?
    Perchè, anche se comincio ad avere una certa età, sono sempre stato affascinato dalla programmazione in Access che non fosse quella semplice dell'uso dei comandi messi a disposizione dal programma stesso...quella in VBA per intendersi


    Grazie!!!!
  • Re: NASCONDERE MASCHERA DI ACCESSO AD UN DATABASE

    beasissi ha scritto:


    Buongiorno a tutti.
    Ho realizzato una maschera di accesso contenente dei pulsanti che comandano l'apertura di altre maschere.
    Il problema che però vi sottopongo ed al quale non sto trovando la soluzione, è il seguente:
    io vorrei che una volta effettuata la scelta, avendo cioè scelto di aprire una determinata maschera, la maschera di accesso si portasse in icona in modo da non rimanere a parziale copertura di quella aperta.
    Viceversa, nel momento della chiusura della maschera precedentemente scelta, la maschera di accesso deve ritornare in primo piano in modo da consentire una nuova scelta tra le maschere disponibili.

    Spero di essere stato chiaro nell'esposizione del problema.

    Resto in atteso di gentile riscontro.

    Riccardo.
    Credo abbiate concetti di funzionalità da rivedere, ed abbiate creato molto fumo ma poca sostanza...!
    Se hai una Maschera principale che ti consente di aprire N maschere... serve che ogni Button apra la maschera poi chiuda se stessa...!
    
    Private Sub NomeButtonApriFomA_Click()
        DoCmd.OpenForm "MascheraA"
        Docmd.Close acForm, Me.Name
    End Sub
    Questo può essere per ogni Button che vuoi inserire se ritieni sia la soluzione che ti piace.

    Serve poi capire come Riaprire la Maschera di SELEZIONE GENERALE...
    Qui serve ragionare su come si vuople gestire l'interfaccia grafica... cosa meno banale di quanto si possa pensare.

    Access ad esempio ha la ToolBar chiamata RIBBON che è molto potente e che potrebbe sopperire alla maschera di Apertura, personalmente non la uso MAI proprio a favore di una gestione più funzionale della Barra principale in cui metto i comandi che servono.
    Chiaramente la sua gestione non è banale e richiede conoscenza anche del VBA.

    Altrimenti si può pensare di sfruttare l'evento di Scaricamento delle Maschere per riaprire la maschera principale...
    
    Private Sub Form_Close()
          DoCmd.OpenForm "MascheraPrincipale"
    End Sub
    Non serve altro...
  • Re: NASCONDERE MASCHERA DI ACCESSO AD UN DATABASE

    beasissi ha scritto:


    Grandisssimooo!!! Funziona perfettamente.

    Ma senti un pò ...come si fa ad imparare bene cosi come fai tu?
    Hai fatto qualche corso ? se si, quali?
    Perchè, anche se comincio ad avere una certa età, sono sempre stato affascinato dalla programmazione in Access che non fosse quella semplice dell'uso dei comandi messi a disposizione dal programma stesso...quella in VBA per intendersi


    Grazie!!!!
    Guarda, sono solo uno smanettatore seriale .

    Ciao.

    Alex66
Devi accedere o registrarti per scrivere nel forum
11 risposte