Newsgroup: it.comp.appl.access
Titolo: Focus dopo DoCmd.RunCommand acCmdAppMinimize

Carissimi,
sto costruendo un mini-db in a2003, fatto di una tabella 3 forms e un
pò di codice. Premesso che l'mde è utilizzato con il runtime 2007, ho
deciso di strutturare le form come popup a tutto schermo (per non
visualizzare nessun elemento del runtime).
Così facendo però la popup mi copre anche la barra delle applicazioni
di winxp. Ho provveduto, quindi, ad inserire un pulsante "Riduci ad
icona" che risponde a questo codice:
Private Sub Riduci_Click()
On Error Resume Next
    Me.Riduci.HyperlinkSubAddress = ""                  'elimina
<<l'effetto manina>> dal pulsante
    Me.Xxx.SetFocus
'toglie il focus dal btn Riduci
    DoCmd.RunCommand acCmdAppMinimize         'minimizza tutto l'mde
ad icona sulla barra
End Sub
Dopo tanto testare, fin qui TUTTO OK!
Il "problema" che vorrei evitare è il seguente: quando si clicca sul
task dell'mde sulla barra, il db si massimizza perfettamente ma la
form aperta non ha il focus (me ne accorgo perchè schiacciando invio,
ed attivando il pulsante predefinito, non ho nessun comando eseguito o
premendo il tasto TAB non riesco a spostarmi fra le varie text box).
Basta un click su una parte qualsiasi della form che subito dopo tutti
i comandi tornano a funzionare correttamente (il pulsante predefinito
in testa).
Evitare quel click mi farebbe risparmiare un sacco di tempo (essendo
il db un semplice db di data entry), utilizzando queste scorciatoie da
tastiera senza dover toccare il mouse.
All'apertura del db eseguo questo codice
        DoCmd.SetWarnings False
        CommandBars.ActiveMenuBar.Enabled = 0
        Application.SetOption "Show Status Bar", False
        Application.SetOption "ShowWindowsInTaskbar", 0
        Application.SetOption "Behavior Entering Field", 0
        Application.SetOption "Enable Error Checking", 0
        DoCmd.RunCommand acCmdAppMaximize
La finestra avvio (da strumenti) contiente solo il titolo
dell'applicazione, l'icona e la form d'apertura.
Grazie sin d'ora a chi vorrà darmi una mano.
Mik

 ha scritto nel messaggio 
news:248dc51a-d980-4c03...@i6g2000yqj.googlegroups.com...
Carissimi,
sto costruendo un mini-db in a2003, fatto di una tabella 3 forms e un
p� di codice. Premesso che l'mde � utilizzato con il runtime 2007, ho
deciso di strutturare le form come popup a tutto schermo (per non
visualizzare nessun elemento del runtime).
Cos� facendo per� la popup mi copre anche la barra delle applicazioni
di winxp. Ho provveduto, quindi, ad inserire un pulsante "Riduci ad
icona" che risponde a questo codice:
Private Sub Riduci_Click()
On Error Resume Next
    Me.Riduci.HyperlinkSubAddress = ""                  'elimina
<<l'effetto manina>> dal pulsante
    Me.Xxx.SetFocus
'toglie il focus dal btn Riduci
    DoCmd.RunCommand acCmdAppMinimize         'minimizza tutto l'mde
ad icona sulla barra
End Sub
Dopo tanto testare, fin qui TUTTO OK!
Il "problema" che vorrei evitare � il seguente: quando si clicca sul
task dell'mde sulla barra, il db si massimizza perfettamente ma la
form aperta non ha il focus (me ne accorgo perch� schiacciando invio,
ed attivando il pulsante predefinito, non ho nessun comando eseguito o
premendo il tasto TAB non riesco a spostarmi fra le varie text box).
Basta un click su una parte qualsiasi della form che subito dopo tutti
i comandi tornano a funzionare correttamente (il pulsante predefinito
in testa).
Evitare quel click mi farebbe risparmiare un sacco di tempo (essendo
il db un semplice db di data entry), utilizzando queste scorciatoie da
tastiera senza dover toccare il mouse.
All'apertura del db eseguo questo codice
        DoCmd.SetWarnings False
        CommandBars.ActiveMenuBar.Enabled = 0
        Application.SetOption "Show Status Bar", False
        Application.SetOption "ShowWindowsInTaskbar", 0
        Application.SetOption "Behavior Entering Field", 0
        Application.SetOption "Enable Error Checking", 0
        DoCmd.RunCommand acCmdAppMaximize
La finestra avvio (da strumenti) contiente solo il titolo
dell'applicazione, l'icona e la form d'apertura.
Grazie sin d'ora a chi vorr� darmi una mano.
Mik
---------  RISPOSTA  -----------
Non c'� stata nessuna risposta quindi credo che � un problema che finora non 
ha mai interessato nessuno. Io non so darti una risposta, ma ti dico cosa 
farei per cercare di colpire il problema.
Innanzitutto metterei uno stop nella routine di apertura della maschera per 
vedere se, procedendo passo passo, l'inconveniente si presenta ugualmente. 
Poi proverei ad inserire, nella routine di apertura (o forse meglio in 
quella di caricamento) queste due istruzioni:
    me.refresh
    doevents
Non saprei dirti di pi�
Ciao
Antonio