Bonjour,
Ma procédure ne fonctionne pas en mode 64.
J'ai testé
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 { Private : XGridWndProc } procedure TForm1.XGridWndProc(var Msg: TMessage); begin {$IFDEF WIN32} if (Msg.Msg = WM_VSCROLL) and (LongRec(Msg.wParam).Lo = SB_THUMBTRACK) then begin LongRec(Msg.wParam).Lo := SB_THUMBPOSITION; end; {$ENDIF} {$IFDEF WIN64} if (Msg.Msg = WM_VSCROLL) and (Int64Rec(Msg.wParam).Lo = SB_THUMBTRACK) then begin Int64Rec(Msg.wParam).Lo := SB_THUMBPOSITION; end; {$ENDIF} if Assigned(XGridWndMethod) then XGridWndMethod(Msg); end;
Erreur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part ... and (LongRec(Int64Rec(Msg.wParam)).Lo = SB_THUMBTRACK)
E2089 Transtypage incorrect.
E2010 Types incompatibles : 'LongRec' et 'Integer'.
Merci.
Partager