giuseppe93 (Ex-Member)
Pro
Messaggi: 166
Iscritto: 02/08/2009
|
salve! avete presente limewire o utorrent che chiedono la conferma quando cerchi di chiudere la loro finestra? bene! io vorrei fare lo stesso con uno finestra creata da me, cioè una volta creata, se clicco sulla x rossa per chiuderla vorrei che mi venisse un avviso. il problema è come intercettare la chiusura. ho pensato di scrivere del codice dopo la chiamata dell' evento WM_CLOSE tuttavia la finestra si chiude anche se il programma continua a girare in background voi avete idea di come possa fare???
|
|
LittleHacker (Member)
Guru
Messaggi: 1033
Iscritto: 28/04/2009
|
Postato originariamente da giuseppe93:
salve! avete presente limewire o utorrent che chiedono la conferma quando cerchi di chiudere la loro finestra? bene! io vorrei fare lo stesso con uno finestra creata da me, cioè una volta creata, se clicco sulla x rossa per chiuderla vorrei che mi venisse un avviso. il problema è come intercettare la chiusura. ho pensato di scrivere del codice dopo la chiamata dell' evento WM_CLOSE tuttavia la finestra si chiude anche se il programma continua a girare in background voi avete idea di come possa fare??? |
Ma scusa te lavori con Visual C++ o dev-c++?
perchè se lavori con il primo allora ti basta utilizzare l'evento formcolsing della form(se utilizzi una windowsapplication... |
|
giuseppe93 (Ex-Member)
Pro
Messaggi: 166
Iscritto: 02/08/2009
|
uso dev (progetto win32)
|
|
HeDo (Founder Member)
Guru^2
Messaggi: 2765
Iscritto: 21/09/2007
|
Postato originariamente da giuseppe93:
uso dev (progetto win32) |
male.
ora veniamo al problema, direttamente dal primo risultato di google sull'msdn:
Remarks
An application can prompt the user for confirmation, prior to destroying a window, by processing the WM_CLOSE message and calling the DestroyWindow function only if the user confirms the choice.
By default, the DefWindowProc function calls the DestroyWindow function to destroy the window.
|
|
|
LittleHacker (Member)
Guru
Messaggi: 1033
Iscritto: 28/04/2009
|
Scusa se sbagli ma io nn ho mai utilizzato dev-cpp per creare programmi win32 xrò mi viene spontaneo dirti che se wm_close è uguale a true (o quello che ti dice il programma quando l'utente clicca su x) allora chiedi conferma...no?
Tipo cs:
Codice sorgente - presumibilmente Plain Text |
if(WM_CLOSE == True)
{
MessageBox();
}
|
Dimmi se ho sbagliato alla grande...
|
|
HeDo (Founder Member)
Guru^2
Messaggi: 2765
Iscritto: 21/09/2007
|
Postato originariamente da LittleHacker:
Scusa se sbagli ma io nn ho mai utilizzato dev-cpp per creare programmi win32 xrò mi viene spontaneo dirti che se wm_close è uguale a true (o quello che ti dice il programma quando l'utente clicca su x) allora chiedi conferma...no?
Tipo cs:
Codice sorgente - presumibilmente Plain Text |
if(WM_CLOSE == True)
{
MessageBox();
}
|
Dimmi se ho sbagliato alla grande... |
OMMIODDIO, litte hacker ti chiedo di smettere di scrivere/dire fesserie perchè rischi di incasinare solo le idee a qualcuno che è già in difficoltà.
Se non sai il C++ ne hai una benchè minima idea di come si programma sotto win32, astieniti dal postare in questa sezione e lurka finquando hai capito almeno le basi.
tornando al problema, non considerare il codice di little hacker, non esiste sulla faccia della terra, invece quando ricevi WM_CLOSE prompta una MessageBox chiedendo conferma e poi se è positiva ritorni true o se negativa ritorni DefWindowProc che chiude la finestra.
se hai problemi, posta.
|
|
LittleHacker (Member)
Guru
Messaggi: 1033
Iscritto: 28/04/2009
|
Postato originariamente da HeDo:
quando ricevi WM_CLOSE prompta una MessageBox chiedendo conferma e poi se è positiva ritorni true o se negativa ritorni DefWindowProc che chiude la finestra.
se hai problemi, posta.
|
E io nella teoria che ho detto? le tue stesse parole...noo? Ultima modifica effettuata da LittleHacker il 29/11/2009 alle 19:29 |
|
HeDo (Founder Member)
Guru^2
Messaggi: 2765
Iscritto: 21/09/2007
|
Postato originariamente da LittleHacker:
Postato originariamente da HeDo:
quando ricevi WM_CLOSE prompta una MessageBox chiedendo conferma e poi se è positiva ritorni true o se negativa ritorni DefWindowProc che chiude la finestra.
se hai problemi, posta.
|
E io nella pratica detto? le tue stesse parole...noo? |
si ma quello che hai scritto è codice puramente inventato... |
|
LittleHacker (Member)
Guru
Messaggi: 1033
Iscritto: 28/04/2009
|
Postato originariamente da HeDo:
Postato originariamente da LittleHacker:
Postato originariamente da HeDo:
quando ricevi WM_CLOSE prompta una MessageBox chiedendo conferma e poi se è positiva ritorni true o se negativa ritorni DefWindowProc che chiude la finestra.
se hai problemi, posta.
|
E io nella pratica detto? le tue stesse parole...noo? |
si ma quello che hai scritto è codice puramente inventato... |
Infatti non ho citato il codice ma solo la parte teorica... |
|