Tastatureingaben abfangen

Ha, das ist ja wunderbar, das klappt ja wie geschmiert :)

Danke an alle!

Da ich auf meinen Dialogen (noch) keine Buttons habe, muss ich nichts Button-technisches machen - aber das Prinzip ist klar, und wenn mal ein Button dazukommt, weiß ich jetzt was ich machen muss
 
Ich hätte auch eine Frage, kann ich auch die Tasteneingabe

Alt+F4

abfangen?

Ich will nur das man mit dem Taskmanager das Programm beenden kann. Das mit ESC hab ich schon,
es fehlt halt nur noch das ich Alt+F4 abfange und das Programm dann nicht beendet wird.

Wenn es geht dann auch mit dem Taskmanager, aber nur wenn ihr mir auch zeigen könnt wie das
Programm nach einer bestimmten Zeit beendet wird.

Danke!

mfg
Thug-Angel
 
Mit OnClose();
Du fügst wie beschrieben eine Nachrichtenbehandlung für OnClose() hinzu und beendest diese mit "return;" anstatt mit "CDialog::OnClose();"

Dammit dein Programm nach einer bestimmten Zeit zu geht, muss du zusätzlich eine Nachrichtenbehandlung für "OnTimer(...)" hinzufügen.

da schreibst du dann rein :
Code:
if (nIDEvent == 0)
   CDialog::OnClose();

Beim starteb des Programms musst du dann, z.B. in "OnInitDialog()" so SetTimer aufrufen:

Code:
SetTimer([nIDEvent], [Zeit in Millisekunden], NULL );

M.f.G.Erik
 
Das was du da geasagt hast hab ich schon glaube ich gemacht, guck dir das mal an. Aber ich will das ich mit Alt+F4 nicht das Prog beenden kann.

das steht in der Funktion von OnOK()

Code:
void CScherzvirusDlg::OnOK() 
{
	// TODO: Zusätzliche Prüfung hier einfügen
	
	Czuruck Dialog; 
	Dialog.DoModal();
	//CDialog::OnOK();
}

Das ist doch soweit richtig, aber ich kann das immernoch mit Alt+F4 beenden das will ich nicht.
 
Wer aufmerksam mitgelesen hat, wird erkennen, das ich von "OnClose()" nicht von "OnOk()" geschrieben habe - also versuchs mal damit.

M.f.G. Erik
 

Neue Beiträge

Zurück