Bonjour à tous,
Je travaille avec C++ Builder XE6.
j'ai un problème dont je ne comprends pas l'origine.
Dans un KeyPress je veux transformer un Enter ('r' ou VK_RETURN) en tabulation.
J'utilisais sans problème :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
	if(Key =='r')
	{
		Key=0; // pour éviter le beep
		//ShowMessage("Vers NextControl");
		FindNextControl(dynamic_cast<TWinControl*>(Sender),true,true,false)->SetFocus();
	}
Actuellement avec le code suivant :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
	void __fastcall TfNouveau::eSystoleKeyPress(TObject *Sender, System::WideChar &Key)
{
	ShowMessage("Entrée dans eSystoleKeyPress");
	if(Key == VK_RETURN)  // ou if(Key == 'r')
	{
		Key=0; // pour éviter le beep
		ShowMessage("Vers NextControl");
		FindNextControl(dynamic_cast<TWinControl*>(Sender),true,true,false)->SetFocus();
	}
	else
	{
	 char DecimalSeparator = '.';
	 if ((Key < '0' || Key >'9') && Key != 8 && (Key != DecimalSeparator ||
												((TEdit *)Sender)->Text.Pos(DecimalSeparator)!=0))
																														Key = NULL;
	}
}
//-----------------
Non seulement il n'y a pas la transformation du Retour chariot en tabulation, mais il n'y a pas le message "Entrée dans eSystoleKeyPress".
Quelle peut être la cause de ce comportement ?
Merci de votre aide.