Hilfe abschalten
-
Hallo,
ich habe ein kleines dialogbasiertes Prohramm geschrieben, das keine Hilefe hat und braucht! Trotzdem will das Programm beim Drücken der F1-Taste generell eine Hilfe-Datei öffnen!
1. Wie kann ich das Abschalten
und die 2. Frage:
Wie kann ich die Tasten F1-F12 durch eigene Funktionen belegen! Ich habe schon eine Accelerator-Liste hinterlegt! Die Tasten (z.b F1 oder F2) haben die slebe ID bekommen wie bei mir vorhanden Buttons! Trotzdem werden die zugehörigen Funktionen nicht aufgerufen, sondern bei F1 die nicht vorhandene Hilfe!Danke für die Tips
-
Zu 1.
überlade die WM_HELPINFO und verändere die Funktion so wie unten und der Spuk mit F1 sollte vorbei sein
BOOL CxxxDlg::OnHelpInfo(HELPINFO* pHelpInfo) { //return CDialog::OnHelpInfo(pHelpInfo); return TRUE; }Accelator-Tasten werden vom Dialog nicht so ohne weiteres unterstützt. Folgende Code macht es möglich:
Füge folgende in deiner InitInstance ein
m_haccel=LoadAccelerators(AfxGetInstanceHandle(), MAKEINTRESOURCE(IDR_ACCELERATOR1));Folgendes in deinem Headerfile deiner App:
HACCEL m_haccel;Dann überlädst Du noch ProcessMessageFilter deiner App
BOOL CxxxApp::ProcessMessageFilter(int code, LPMSG lpMsg) { if(m_haccel) { if (::TranslateAccelerator(m_pMainWnd->m_hWnd, m_haccel, lpMsg)) return(TRUE); } return CWinApp::ProcessMessageFilter(code, lpMsg); }Dann sollte es laufen.
Gruß