Salut
J'ai écrit du code pour changer la ligne sélectionnée d'une grille (DBGrid) tout en gardant le focus sur mon TEdit. VK_UP et DOWN pour se déplacer dedans...
Ce que j'aimerai faire, c'est tout en gardant le focus sur mon TEdit, éviter que ma sélection ne disparaisse. En effet, la grille ne scroll pas lorsque la sélection quitte la zone visible de la grille.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 procedure TForm1.Edit1KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); var SelIdx : Integer; begin if DBAdvGrid1.Row <= 0 then Begin DBAdvGrid1.SelectRows(1,1); End; SelIdx := DBAdvGrid1.Row; if (KEY = VK_DOWN) AND (SelIdx <= (DBAdvGrid1.RowCount - 2)) then DBAdvGrid1.SelectRows(SelIdx + 1, 1) else if (KEY = VK_UP) AND (SelIdx >= 1) then DBAdvGrid1.SelectRows(SelIdx - 1, 1) ...
Merci d'avance pour vitre aide.
Partager