Newsgroup: it.comp.appl.access
Titolo: Popup con elenco dinamico maschere aperte

Vorrei adottare per i miei gestionali una popup contenente l'elenco e
rispettivi links di tutte le maschere aperte, popup che si aggiorni
automaticamente ogni volta che una maschera viene aperta o chiusa.
Qualcuno ha già fatto qualcosa del genere? Qualche dritta per cominciare?
Grazie
mayerlink

 wrote in message
news:4401c6fd$0$5992$
4faf...@reader2.news.tin.it

A cosa servirebbe..?
Boh
Non vedo la difficoltà, su apertura della Maschera vai a chiamare
la Funzione Public che dichiarerai nella Form Popup che ciclerà
l'insieme Forms ricompilando magari la ListBox sfruttando il metodo
AddItem
Public Function RefreshForm()
   Dim frm as access.Form
   Me.Painting=false
   Form each frm in Forms
      If frm.Name<> Me.Name then
          Me!NomeList.Additem frm.Name
      End If
   Next
   Me.painting=True
End function
Su Evento Load delle Form scrivi:
Forms!NomeFormPupoup.RefreshForm
Ma a che serve...?
Ciao
@Alex
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 wrote in message 
news:34782ff96ae6bcd47a...@mygate.mailgate.org...

Intanto ti ringrazio (se incontro difficoltà ti chiederò ancora aiuto).
A cosa serve?
Sto installando in un'azienda un mio gestionale alquanto strutturato ed 
affollato di maschere.L'operatore deve continuamente zompare da una maschera 
all'altra e mi ha chiesto una soluzione semplice ed immediata. Per prima 
cosa ho creato con una popup una specie di menu a scomparsa con il Pannello 
Comandi completo: in pratica spostando il puntatore del mouse sull'estremità 
sinistra dello schermo appare il menu da cui se vuole può accedere ad 
un'altra maschera, quando il puntatore esce dalla popup questa scompare.
La mia richiesta è uno sviluppo di quanto sopra: l'operatore, senza 
abbandonare la maschera su cui sta lavorando in un dato momento, può vedere 
l'elenco delle altre maschere in cui ha già agito (e solo quelle) e muoversi 
tra le stesse con immediatezza.
Che dici?
Ciao e grazie ancora
mayerlink

 mayerlink
Sinceramente non mi è mai capitato di sviluppare o usare applicativi
che aprano un numero di maschere tale da rendere difficoltoso sapre
dovi si lavora...!
Ovviamente però dipende sempre da chi sviluppa e da chi lavora
certo è che se l'operatore ha evidenziato disagio a dover Zompare
tra le maschere forse la cosa più semplice e coerente sarebbe quella
di evitarglielo e non di aggiungere una maschera per le maschere....!!
Questo però è il mio punto di vista.


 mayerlink
Sicuro di aver strutturato bene il tutto??
-- 
_ _
Ciao
MAssimiliano Amendola            
www.accessgroup.it
Cisa - Conferenza Italiana per Sviluppatori Access
Info:  
www.donkarl.com/it

 ha scritto nel messaggio 
news:4401c6fd$0$5992$4faf...@reader2.news.tin.it...

Io da tempo uso una soluzione come quella che tu dici.
Questo perchè uso una maschera massimizzata (Apertura) che fa da "sfondo" a 
tutto il gestionale.
Quando il cliente passa da una maschera ad un altra, la prima se non chiusa 
diventa invisibile perchè posizionata sotto la principale e la nuova 
maschera, popup, prende il focus e si posiziona sopra tutte le altre...
Io adotto questa tecnica:
Una tabella contiene due campi: NomeMaschera (testo) e Aperta (vero/falso). 
La tabella è popolata con il nome di tutte le maschere.
Due funzioni: "SegnaAperta" e "SegnaChiusa".
All'apertura di una maschera eseguo il codice "SegnaAperta" e alla sua 
chiusura il codice "SegnaChiusa".
Sulla maschera massimizzata, quindi sempre visibile, ho inserito una combo 
che prende solo i valori "aperta = true" della tabella. Al clic di un valore 
della combo il codice "apre" la maschera scelta.
Questo il codice.
Public Sub SegnaAperta(NM As String)
On Error Resume Next
    Dim rcs As Recordset
    Set rcs = CurrentDb.OpenRecordset("SQMaschere")
    With rcs
    .FindFirst "[NomeMaschera]= " & "'" & NM & "'"
    .Edit
    !aperto = True
    .Update
    .Close
    End With
    Forms!Apertura!ComboAperte.Requery
End Sub
Public Sub SegnaChiusa(NM As String)
On Error Resume Next
    Dim rcs As Recordset
    Set rcs = CurrentDb.OpenRecordset("SQMaschere")
    With rcs
    .FindFirst "[NomeMaschera]= " & "'" & NM & "'"
    .Edit
    !aperto = False
    .Update
    .Close
    End With
    Forms!Apertura!ComboAperte.Requery
End Sub
Private Sub ComboAperte_Click()
Call ApriMaschera(Me.ComboAperte.Column(2))
DoEvents
Me.ComboAperte = ""
End Sub
Public Sub ApriMaschera(MioNome As String)
    DoCmd.OpenForm MioNome
End Sub
Fammi sapere se è stato utile.
Ciao, Carlo 

 wrote in message 
news:4403f750$0$12603$4faf...@reader3.news.tin.it...

Grazie molte Carlo. Appena posso mi ci concentro (magari ti chiedo lumi) e 
ti faccio sapere.
Ciao
mayerlink