Newsgroup: it.comp.appl.access
Titolo: Creare oggetto dinamicamente

ciao a tutti,
vorrei saper come posso crearmi dei controlli dinamicamente a seconda
del tipo selezionato da un utente. Mi spiego da una form un utente con
privilegi di admin deve impostare alcune domande e deve prevedere
delle risposte che possono essere di tipo testo, chec box, radio
ecc.., quindi a seconda del tipo di controllo che seleziona l'admin io
debbo avere la possibilià di crearmi dei controlli dinamici e
associarli ad un determinato recordset.
spero di essere stato abbastanza chiaro.
Tommy

 ha scritto nel messaggio 
news:1178813739.3...@o5g2000hsb.googlegroups.com...

La vedo dura, a meno di usare qualche artifizio.
Potresti prevedere una machera che contiene tutti i controlli opportuni e 
'invisibili'.
A seconda di qualche flag (che provvederai a mettere nel record della 
domanda) vai a 'visualizzare' una casella di testo piuttosto della checkBox 
e così via(sull'evento Corrente).
Questo può essere tranquillamente gestito in una maschera a record singolo, 
non credo che potresti ovviare in una situazione a maschere continue, perchè 
l'abilitazione della visibilità del controllo avrebbe effetto su tutti i 
records visibili e prenderebbe la configurazione flag dell'ultimo record.
Ivan 


Diciamo che se questa è la tua esigenza Access non è adatto in quanto
non è possibile creare controlli Runtime ma solo in modalità Design.
Quindi come ti ha detto IVAN l'unica è riempire la Form di controlli e
gestirne l'uso di quelli selezionati...
oppure costruire la Form in modalità Design(nascosta), salvare, e
riaprire in modalità standard.
Questo ovviamente richiede la costruzione di una Form(Wizzard).
Francamente non mi piace questo sistema, e quando ho avuto esigenze
simili ho usato VB6.
@Alex

 ha scritto nel messaggio 
news:1178875720.1...@o5g2000hsb.googlegroups.com...






@Alex
confermo in pieno,
io ho usato questa tecnica per posizionare dei rettangolini rossi su giorni 
'festivi' in un calendario self-made.
Se i controlli possibili sono molti potresti usare il TAG come discrimine, 
alla maniera di VB.
Potresti pensare as un TAG più o meno complesso che identifica lo scope del 
controllo.
Io ho fatto così per il mio calendario 'lavorativo' dove ogni mese comincia 
(necessariamente!) la domenica e finisce di sabato! (serve per calcolare le 
settimane lavorate dai collaboratori familiari).
L'esigenza di 'accendere' o 'spegnere' un intero gruppo di controlli, l'ho 
risolta con stringhe di tag tipo
s1g1,s1g2,s1g3 .....
s2g1,s2g2, ....
quindi scorrendo nel insieme dei controlli posso controllare i TAG e rendere 
o meno visibili gli 's5' se il mese contiene 5 settimane lavorative.
Posso anche colorare di rosso il testo se il giorno è coinvolto in una 
malattia o ferie, ....
Inoltre posso rilevare la posizione del controllo e posizionarci 'attorno' 
il rettangolo rosso se il giorno è una festività nazionale.
Insomma l'operazione coinvolge pochi controlli ogni mese e quindi mi pareva 
percorribile e lo è.
Se le cose si complicano molto credo che @Alex abbia ragione, VB6 ti 
permette le matrici di controlli e la  loro creazione 'al volo'.
Ivan


Condivido i vs dubbi, infatti sto provando a costruirmi tutti i
controlli in modalita nascosta, anche perchè i controlli debbono stare
in una maschera singola e quindi in funzione dei flag mi abilito uno
al posto dell'altro.
Qualche prova l'ho già fatta e sembra funzionare, provo ad andare alla
parte più difficile e poi vediamo....
grazie a entrambi...
Tommy