Newsgroup: it.comp.appl.access
Titolo: non riesco ad avere ISTANZE MULTIPLE della stessa maschera.

AIUTO!
Come da oggetto ho seguito i passi canonici per ottenere più istanze della 
stessa maschera (me ne baterebbero due!).
Ho dichiarato (in testa al modulo)
Dim Finestra As Form
sMioFiltro = "[unCampo] = " & iUnValore
...
e su Click di un pulsante della maschera chiamante:
Set Finestra = New Form_MiaMascheraDaAprire
With Finestra
    .Visible = True
    .Filter = sMioFiltro
    .FilterOn = True
End With
....
Tutto funziona alla perfezione! Mi apre la mschera. Ma alla successiva 
pressione del pulsante chiamante mi riapre la maschera, ma sempre la stessa, 
filtrata bene ma non riesco ad aprire DUE istanze.
grazie in anticipo
Ivan
PS
ho controllato sul sito di Karl D., e sul link alla KB di Microsoft.
Entrambi consigliano questa sequenza, ma a me non funziona! Sono testone ? 

 ha scritto nel messaggio
news:438499ad$0$16217$4faf...@reader3.news.tin.it...

Vai sul Sito Comune (link qui sotto) e scaricati il database di esempio
allegato alla FAQ della Sezione General di Silvio Savoldi intitolata "6.75
Implementare un archivio di immagini".
Pigiando il pulsante Visualizza/Rimuove Miniature verdrai un esempio di
apertura di più istanze si una maxhera: studiati il codice che c'è dietro
quel pulsante.
-- 
Roberto
-----------------------------------------------------
il Sito Comune di it.comp.appl.access
http://www.sitocomune.com
----------------------------------------------------

 wrote in message
news:438499ad$0$16217$
4faf...@reader3.news.tin.it

Per avere più istanze di una Form serve avere tante dichiarazioni
Oggetto quante sono le Istanze da aprire, oppure sfruttare
una collection di Classi(in questo caso di Form).
' Questo a livello di Form
Dim CF As New Collection
' Questo a livello di Sub/Function
Private Sub AddIstance(strFormName as string)
'Quindi Setti la variabile oggetto
' e la aggiungi alla collection con il
'suo metodo Add 
  Dim mF as Access.Form
  Set mF = New Forms(strFormName)
  With mF
     .Visible=True
     ......
  End With
  Col.Add mF,mF.Hwnd 
  Set mF=Nothing 
End Sub
La cosa è molto embrionale ma funziona così come
ti ho illustrato.
Andrebbero implementati metodi di Delete dell'istanza
tramite l'uso del Key(l'Hwnd o Handle). 
Ciao
@Alex
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 @Alex
Non dirmi che sulla spiaggia c'è il wireless?!?
Che ci fai da queste parti???
Nessuna ghirlanda di orchidee?
-- 
_ _
Ciao
MAssimiliano Amendola            
www.accessgroup.it
Cisa - Conferenza Italiana per Sviluppatori Access
Info:  
www.donkarl.com/it

 Nessuna ghirlanda di orchidee?
;-/ sono tornato, purtroppo...., non mi volevano
nemmeno come lavapiatti.
@ALex


 @ALex
Ma se fanno così uno come può allungarsi la vacanza???
Discriminazioni...
Bentornato.
p.s. hai visto sul NG microsoft Ascorbic con tre Api ha ottenuto le form
trasparenti?
Quando l'ha dimostrato pensavo a te.


 Quando l'ha dimostrato pensavo a te.
No non ho ancora avuto modo di vedere molto.
In VB è decisamente semplice, in Access non ho mai
pensato di farlo...!
Appena ho un attimo dò un'occhiata.
@Alex


 ho controllato sul sito di Karl D., ...
Sembra però che non hai letto cosa scrivo sul posizionamento delle
istanze nella 
www.donkarl.com/it
 FAQ 4.6.
-- 
HTH
Karl
*********
Access FAQ: 
www.donkarl.com/it
+ Conferenza Italiana per Sviluppatori di Access (CISA) 

 + Conferenza Italiana per Sviluppatori di Access (CISA)
Ciao Karl,
prima di tutto ti voglio rimgraziare perchè il tuo sito e il sitocomune, 
sono la mia bibbia personale per i problemi Access.
Ho usato il codice che hai proposto, ma riesco ad aprire solo 1 (una) 
istanza di una maschera, non 2 o tre o quattro.
Probabilmente non ho seguit alla lettera, ma.... non sò dove sbaglio.
Il suggerimento che mi è arrivato da Alex, dovrebbe risolvermi il problema. 
devo creare una collezione a cui aggiungerò elementi New Form.
Ancora non ho provato, ma entro sera devo risolvere questo tentativo.
Se pensi che ci sia qualcosaltro, ti prego di intervenire ancora.
Ivan

 Dim CF As New Collection
a livello di form o di dichiarazione di modulo? Se di Form : di quale?
mi spiace rompere le scatole perchè non capisco, ma vorrei superare questo 
gradino che molti hanno già superato-
grazie
Ivan 

 Se pensi che ci sia qualcosaltro, ti prego di intervenire ancora.
Non so se capisco bene il problema ma per me sembra come solo
non vedi le istanze che crei perché come scrivo nella FAQ:
*********
...rendi visibile la seconda istanza e la piazzerai in un punto
differente dello schermo perchè altrimenti si sovrapporrà sulla
prima istanza.
With FormAgain
    .Visible = True
    DoCmd.MoveSize 2000, 2000
End With
*********
La riga con MoveSize manca nel codice che hai postato:
With Finestra
    .Visible = True
    .Filter = sMioFiltro
    .FilterOn = True
  DoCmd.MoveSize 2000, 2000
End With
Certo puoi gestire i parametri per la posizione in variabili che
incrementi con ogni esecuzione o invece usare il metodo Move
nelle versioni recenti di Access.


 ha scritto nel messaggio 
news:3um719F...@individual.net...
[---]

ciao Karl,
io ho provato, ma non vedo la nuova istanza, anche se sposto la maschera, 
non ne vedo una DIETRO.
Forse io non ho capito bene dove devo mettere il codice di dichiarazione.
Anche Alex mi dice: nella dichiarazione a livello Form.  Ma quale Form?
Io vorrei aprire la maschera da un pulsante di un'altra maschera.
Forse sono troppo lontano dalla soluzione....
grazie per il tempo che vi rubo
Ivan 

Ringrazio Karl, Alex e Roberto da casa.
Sono riuscito a mettere le 3 (tre) righe di codice nella giusta sequenza.
Anche l'esempio consigliatomi da Roberto da casa sul sitocomune: di Silvio 
Savoldi  mi ha ulteriormente chiarificato la sequenza.
Ho un mare di finestre multiple!
Grazie