Bonjour,

J'ai remarqué un problème entre Delphi 10.3 et Delphi 12.1 sur les TDBCheckBox.

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
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
 
unit TestOnClick;
 
interface
 
uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
  Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Vcl.DBCtrls, OraCall,
  Data.DB, DBAccess, Ora, MemDS, Datasnap.DBClient, VirtualDataSet;
 
type
  TForm1 = class(TForm)
    DBCheckBox1: TDBCheckBox;
    OraQuery1: TOraQuery;
    OraSession1: TOraSession;
    OraDataSource1: TOraDataSource;
    OraQuery1COCHE: TFloatField;
    procedure DBCheckBox1Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
  private
    { Déclarations privées }
  public
    { Déclarations publiques }
  end;
 
var
  Form1: TForm1;
 
implementation
 
{$R *.dfm}
 
procedure TForm1.DBCheckBox1Click(Sender: TObject);
begin
  showmessage('Click');
end;
 
procedure TForm1.FormCreate(Sender: TObject);
begin
  OraQuery1.Close;
  OraQuery1.Open;
end;
 
end.
Sur le code ci-dessus, le comportement est différent entre 10.3 et 12.1.

Dans 10.3 le OnClick se déclenche (je précise que la TOraQuery renvoi toujours '1' pour le test)
Dans 12.1 le OnClick ne se déclenche pas

Quelqu'un d'autre à été confronté à ce cas, et si oui avez vous trouvez une solution ?

Merci d'avance