Newsgroup: it.comp.lang.delphi
Titolo: problema di chiusura di un form

Quali sono i motivi per cui non viene chiamata la procedura di chiusura di
un form quando si clicca su un bottone con modalresult "mrcancel" oppure
quando si clicca sulla X rossa in alto a destra della finestra?
Ho questo mio form che prima creo con la showmodal, poi lo metto invisible e
lo richiamo da un'altra procedura (quindi non lo ricreo ma lo torno a
mettere visibile). Se premo il bottone annulla subito dopo averlo creato, il
form mi si chiude normalmente, se premo il bottone annulla la seconda volta,
perr intenderci quando non lo creo ma quando lo metto visibile, il form
resta li dov'č senza "batter ciglio"
PERCHE'? (scusate lo sfogo :)  )
-- 
Davide
------------------------------------------------------------
Il tempo č la cosa piů preziosa che l'uomo possa spendere
------------------------------------------------------------

 ma lo torno a mettere visibile).
Come?
Codice. Form in AutoCreate? Usi sempre ShowModal per mostrarlo? ne
chiami Hide? Cosa c'e' nell'OnClose? Codice.
Saluti
Paolo Arosio
-- 
"La dimostrazione dell'esistenza di specie intelligenti nell'universo
 e' che non ci vengono a trovare"

 lo richiamo da un'altra procedura 
bruttina come cosa:
1) risorse allocate che potrebbero non essere mai utilizzate
Suggerirei l'applicazione di un singleton.
2) poca coerenza: crei in un contesto "a" e usi in un contesto 'b'
sarebbe + corretta, ove possibile, una sequenza crea-usa-distruggi
cosa hai sul check del modalresult?
A

Suggerirei l'applicazione di un singleton.
Albert, cos'e' un singleton ?
(ammetto la mia ignoranza... #=)
-- 
Morde. 
(
mo...@despammed.com
)

> Albert, cos'e' un singleton ?
è un design patterns.
Definisce una classe di cui puo essere creata una sola istanza nel 
contesto in cui lavori, ad esempio in una tua applicazione.
La classe viene progettata x fare in modo che, al primo tentativo di 
utilizzo viene creata l'unica istanza che è possibile creare, mentre ai 
suggessivi utilizzi non verranno create altre istanze ma verrà sempre 
restituita quella creata la prima volta.
In pseudocodice:
costruttore pippo: Istanza;
begin
   if non esiste Istanza then
     istanza = new classeistanza
   result = istanza
end;
A

è un design patterns.
<snip>
Grazie.
Ma dovevo arrivare a 32 anni per capire l'importanza dei design patterns?
Mea culpa, sob... mea culpa...
-- 
Morde. 
(
mo...@despammed.com
)

Veramente interessante. Davvero.
Io ne ho 46 e non so cos'e' un design pattern.
Ciao
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

> Io ne ho 46 e non so cos'e' un design pattern.
allora....
alcuni tizi americani si sono messi a studiare alcuni problemi legati e 
sono arrivati a definire le strutture di alcune classi (mi pare siano 
7...) che rappresentano la soluzione a problemi comuni in ambito di OOP.
Un po come gli algoritmi "classici"
Tali strutture sono stae definite "design patterns"
E' probabile che alcuni di essi vengano usati senza sapere che sono 
stati definiti design patterns, tipo il wrapper.
Esiste un libro in italiano che descrive questi patterns con del codice 
scritto ovviamente in c++ ma abbastanza comprensibile.
Lunedi se volete posto il titolo.
Se fate un po di ricerche con google dovreste trovare altre info.
Infine, sono inclusi nella maggior parte dei tools uml come enterprise 
architet, il modelmaker fornito con d7e e credo anche Rose.
A
ps:
io di anni ne ho 35..
sob! la vecchiaia e la senilitą avanzano!
continuo a desiderare di essere chiuso in casa con cindy crawford invece 
di essere qui a scrivere msg sul ng e a combattere con delphi, le app, 
le classi, le lan, i db....
Secondo voi č grave? ;)

Secondo voi č grave? ;)
Non penso... prenditi una bottiglia di wisky, bevila tutta e vedrai che razza
di mostruosi patterns inventerai stanotte!!!!
^___^
-- 
Morde. 
(
mo...@despammed.com
)

 di mostruosi patterns inventerai stanotte!!!!
preferei fare altro, stanotte.... :)
A

preferei fare altro, stanotte.... :)
ah aha ha... !!!
-- 
Morde. 
(
mo...@despammed.com
)


Hai perfettamente ragione ma questa cosa per come viene usata non è
possibile farla. Dupplicando il codice sono arrivato ad una soluzione simile
a quella da te proposta
Grazie cmq, io [e da quel che vedo anche altri] abbiamo imparato qualcosa di
nuovo
Ciao
Davide