cs_ThePierrot
Messages postés2Date d'inscriptionvendredi 12 décembre 2003StatutMembreDernière intervention21 avril 2004
-
20 avril 2004 à 11:06
cs_Delphiprog
Messages postés4297Date d'inscriptionsamedi 19 janvier 2002StatutMembreDernière intervention 9 janvier 2013
-
21 avril 2004 à 12:26
Salut je suis un peu novice en Delphi et je serais reconnaissant si quelqu'un pouvais me pretter main forte.
Je cherche me positionner sur une ligne particulière de mon DBGRID lors de l'ouverture du logiciel. Est ce que quekqu'un connait la marche à suivre pour faire cela. :question)
cs_Delphiprog
Messages postés4297Date d'inscriptionsamedi 19 janvier 2002StatutMembreDernière intervention 9 janvier 201332 21 avril 2004 à 09:53
La solution la plus simple consiste à positionner le curseur de l'ensemble de données sur un enregistrement particulier :
procedure TForm1.FormShow(Sender: TObject);
begin
//Positionner sur le cinquième ligne de la table
if Table1.Recordcount >= 5 then
Table1.RecNo := 5;
end;
Automatiquement, le composant TDbGrid ajustera sa position et l'enregistrement demandé sera visible.
cs_ThePierrot
Messages postés2Date d'inscriptionvendredi 12 décembre 2003StatutMembreDernière intervention21 avril 2004 21 avril 2004 à 12:04
Merci pour l'astuce c'est exactement ce que je cherchais à faire. Mais pendant que j'y suis est-ce qu'il y aurait un moyen de récupérer un numéro d'enregistrement de la même manière. En gros quand je change d'onglet je veux mémoriser la ligne sur laquelle je travaillais puis pouvoir revenir dessus (et non pas sur le dernier enregistrement comme fais delphi automatiquement) lorsque je reviens sur mon onglet. :)
cs_Delphiprog
Messages postés4297Date d'inscriptionsamedi 19 janvier 2002StatutMembreDernière intervention 9 janvier 201332 21 avril 2004 à 12:26
Déclarer une variable globale de type entier.
Dans l'évènement OnChange de l'onglet, lui affecter la valeur de la propriété Recno de l'ensemble de données.
Désolé, mais les contrôles à onglets peuvent aussi bien être un TTabbedNoteBook, un TTabSet, un TPageControl ou TTabControl. En l'absence de précisions suffisantes, je ne peux pas faire davantage.
Note bien que la propriété Recno est une propriété en lecture et écriture.
NB : on peut aussi utiliser les bookmarks des ensembles de données pour revenir sur un enregistrement donné.
Mais je suis très étonné que Delphi change la position d'un enregistrement simplement quand on change d'onglet. Sauf, bien entendu, si le code change le curseur de position entre-temps. >:)