Il titolo é un pò lungo, ma non m'é venuto meglio di così.
Provando il mio programma che, a proposito, é ormai molto avanti, ho casualmenmte scoperto una sorpresa negativa: se nella finestra di digitrazione dei movimenti, dopo avere inserito una o più righe, vado a cliccare sul pulsante di sistema "x", quello più a destra nella barra del titolo del Form (vedi allegato), il Form si chiuede ed in pratica mi resta la giornata indefinita con movimenti appesi, ma che avrebbero dovuti essere cancellati. Il Form in questione è di tipo modale. Ho cercato di capire come intercettare il click, ma sembra che il sistema, avendo il sopravvento sull'applicazione, non ne permetta il riconoscimento per intraprendere azioni razionali sui dati inseritri e, quindi, parzialmente definiti. Però un evento del genere mi determina alterazioni non controllate sui dati già trasferiti nel DB.
Mi spiego meglio la chiusura del Form attravero il pulsante di sistema "x", corrisponde nella logica del programma alla pressione del pulsante "ANNULLA", posto in basso a sinistra, nel form. Però, il click su quest'ultimo scatena nell'evento relativo la pulizia, dalle tabelle del DB già interessate, di tutti i movimenti in corso di inserimento. Non potendo intercettare l'evento click sul pulsante di sistema "x", non posso gestire alcuna azione di reset nel DB, per cui, ripartendo, il programma non é più in grado di funzionare perché trova ovviamente una situazione di alterazione anomala, non gestibile.
Come posso agire automaticamente da programma? Se non é possibile le alternative sono: raccomandare all'operatore utente di non cliccare mai su quel ... pulsante "x", oppure accendere una candela votiva al Santo protettore dei programmatori perché vigili sul click maldestro dell'utente del momento.