Bonjour,
On a découvert un petit bug hier dans le programme sur lequel je travaille et j'ai besoin de votre avis sur la question.
Plutôt que d'expliquer longuement, voici un code exemple (XE7 mais je ne pense pas que ça provienne de la version de Delphi).
Le ShowMessage dans le Button1MouseDown empêche le déclenchement de Button1Click.
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 unit Unit6; interface uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls; type TForm6 = class(TForm) Button1: TButton; CheckBox1: TCheckBox; procedure Button1Click(Sender: TObject); procedure Button1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); end; var Form6: TForm6; implementation {$R *.dfm} procedure TForm6.Button1Click(Sender: TObject); begin ShowMessage('Button1Click'); end; procedure TForm6.Button1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin if CheckBox1.Checked then ShowMessage('Button1MouseDown'); end; end.
Quelqu'un aurait-il une explication sur ce phénomène ?
Partager