Bonjour,

sur une fiche vierge je pose d'abord un TCheckBox, puis un TButton et pour faire bonne mesure un autre TButton.

Ensuite, j'écris un code hautement sophistiqué et laborieux :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
procedure TForm1.CheckBox1Exit(Sender: TObject);
begin
  Button2.SetFocus;
end;
 
procedure TForm1.Button2Click(Sender: TObject);
begin
  Close;
end;
et j'appuie sur F9 : la fiche s'affiche, avec le focus sur le CheckBox, je peux jouer avec <Espace> pour cocher/décocher, pas de souci, la cata arrive quand j'appuie sur <TAB> : le focus passe au Button1,

J'ai bien tenté de mettre le TabStop du TCheckBox à False mais, outre le fait qu'au run l'animal n'a plus le focus, le OnExit envoie quand même dans Button1.

Constaté dans Laz 1.4 - Debian 32 bits et Laz 2.0.10 - Debian 64 bits.

Une idée ?

Une astuce consisterait à mettre le TabStop de Button1 à False et là ça fonctionne mais, si c'est envisageable pour une fiche à 3 composants, ça l'est moins s'il y en a beaucoup et s'il faut presque tous leur faire subir ce traitement.