PDA

View Full Version : [C++] Visualizzare MessageBox alla ricezione di un WM_HELP


MrModd
30-08-2010, 12:40
Ciao, non riesco ad intercettare il segnale WM_HELP. Ho spulciato tutto Google e l'MSDN Library, ma niente.

Ecco la situazione: ho un MessageBox che presenta il tasto "?" (MB_HELP). Devo visualizzare un altro MessageBox nel momento in cui il tasto, oppure F1 sono premuti. Come si fa?

Questo è il codice che ho scritto leggendo l'MSDN:

LRESULT CALLBACK MainWndProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
{
if(msg==WM_HELP)
{
MessageBox(NULL, L"Ciao", L"Titolo", MB_ICONERROR | MB_OK);
return 0;
}
return DefWindowProc(hwnd, msg, wParam, lParam);
}

Però questo non è collegato in nessun modo al resto del programma, cioè è solo una funzione messa nel codice.

Il MessageBox che genera il tasto di aiuto è invece così:

MessageBox(NULL, string_wstring(message).c_str(), L"Programma", MB_RETRYCANCEL | MB_HELP | MB_DEFBUTTON2);

ed è all'interno della funzione int APIENTRY _tWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPTSTR lpCmdLine, int nCmdShow) che dovrebbe essere il punto d'ingresso del programma.

Un grazie anticipato a chi mi aiuterà :)

MrModd
30-08-2010, 22:09
Se premo F1 mi rispondete? :Prrr:

MrModd
31-08-2010, 13:14
UP