Evento click su controllo disabilitato

Anonimo
2023-01-20T11:42:30+00:00

Buongiorno a tutti;

anche se in ritardo, giungano a voi tutti, i miei auguri di un anno splendido.

Scrivo per chiedervi se fosse possibile intercettare l'evento click su un controllo disabilitato. Mi spiego meglio:

Ho una maschera X con una sottomaschera Y, che all'apertura della maschera principale riceve lo stato disabilitato

           Me.sottomascheraY.Enabled = False

Vorrei ottenere, che una volta aperta la maschera principale, quando si va a cliccare sulla sottomaschera disabilitata, faccia qualche operazione.

Es. una MsgBox

Date le mie poche conoscenze sono fermo.

Ringraziando anticipatamente tutti, vi saluto.

Michele

Microsoft 365 e Office | Access | Per la casa | Altro

Domanda bloccata. Questa domanda è stata eseguita dalla community del supporto tecnico Microsoft. È possibile votare se è utile, ma non è possibile aggiungere commenti o risposte o seguire la domanda.

0 commenti Nessun commento

4 risposte

Ordina per: Più utili
  1. Anonimo
    2023-01-20T19:42:09+00:00

    Grazie mille Carletto per la tua risposta.

    C'è già un pulsante che insieme all"aggiunta di un record lo fa.

    Volevo avvisare l'utente che clicca sulla sottomaschera che essa si abiliterà solo con un nuovo record.

    Grazie ancora Michele

    La risposta è stata utile?

    0 commenti Nessun commento
  2. Anonimo
    2023-01-20T18:04:16+00:00

    Devi per forza riabililare, in qualche modo, la sottomaschera attraverso la maschera principale, ad esempio inserendo un pulsante che svolga questa operazione.

    La risposta è stata utile?

    0 commenti Nessun commento
  3. Anonimo
    2023-01-20T15:19:13+00:00

    Buon pomeriggio Abdal,

    e grazie per aver dato seguito alla mia domanda!

    Mi piaceva l'idea di poter risolvere tutto con l'evento SuAttivazione(GotFocus) della submask, tra l'altro si trattava di una routine semplice, dunque è stata la prima che ho testato. Purtroppo l'evento SuAttivazione su un controllo disabilitato non si scatena.

    Ho provato poi ad usare il Suo primo suggerimento (l'evento Form_Click) e l'evento nemmeno si scatena. Ho provato con l'evento Click della sezione Corpo della maschera e con questo ho trovato conforto, ma per scatenarlo ero costretto a cliccare nei bordi della maschera, dunque ho rinunciato. Il Suo terzo consiglio cioè creare un EventHandler non era compatibile con la mia versione del software.

    Con amarezza devo concludere di non esser riuscito a risolvere.

    Prima di salutare volevo rinnovare i miei ringraziamenti per il suo tempo

    Michele.

    La risposta è stata utile?

    0 commenti Nessun commento
  4. Anonimo
    2023-01-20T13:11:27+00:00

    Ciao

    Sono Abdal e sarei felice di aiutarti con la tua domanda.

    È possibile intercettare l'evento click su un controllo disabilitato. A tale scopo, è possibile utilizzare l'evento Form_Click per il form principale e controllare la proprietà Enabled della sottomaschera nel gestore eventi. Se la sottomaschera è disabilitata, è possibile visualizzare una finestra di messaggio o eseguire qualsiasi altra operazione desiderata. Ecco un esempio di come potresti implementarlo in VBA:

    Sub privato Form_Click() If Me.submaskY.Enabled = False Then MsgBox "La sottomaschera è disabilitata." Fine Se Fine sub

    Un altro modo per eseguire questa operazione consiste nell'utilizzare l'evento GotFocus della sottomaschera e controllare la proprietà Enabled della sottomaschera nel gestore eventi. Se la sottomaschera è disabilitata, è possibile visualizzare una finestra di messaggio o eseguire qualsiasi altra operazione desiderata. Ecco un esempio di come potresti implementarlo in VBA:

    Sub privato submaskY_GotFocus() If Me.submaskY.Enabled = False Then MsgBox "La sottomaschera è disabilitata." Fine Se Fine sub

    In alternativa, è anche possibile creare un oggetto EventHandler personalizzato per il controllo e controllare la proprietà Enabled della sottomaschera nel gestore eventi. Ed eseguire l'operazione desiderata di conseguenza.

    Private Sub submaskY_Click(sender As Object, e As EventArgs) Gestisce submaskY.Click If Me.submaskY.Enabled = False Then MsgBox "La sottomaschera è disabilitata." Fine Se Fine sub

    Si noti che gli esempi precedenti sono scritti in VBA e la sintassi esatta può variare a seconda del linguaggio di programmazione e del framework che si sta utilizzando.

    Spero che questa informazione aiuti.

    Saluti

    Abdal

    Questa risposta è stata tradotta automaticamente. Di conseguenza, potrebbero esserci errori grammaticali o espressioni strane.

    La risposta è stata utile?

    0 commenti Nessun commento