informatixo
Messages postés129Date d'inscriptionmercredi 4 février 2004StatutMembreDernière intervention25 juillet 2012
-
18 août 2006 à 10:05
informatixo
Messages postés129Date d'inscriptionmercredi 4 février 2004StatutMembreDernière intervention25 juillet 2012
-
24 août 2006 à 13:49
Bonjour à tous,
J'ai un problème avec le dbgrid. Je me suis inspiré de ce code de Nono40.
Mais j'ai placé un DBMemo sur une autre form et c'est cette form que je veux positionner sur la dbgrid et aligner avec le coin haut et gauche de la cellule que je sélectionne (cette cellule représente le contenu d'un champ memo "un champ blob").
Lorsque dans les options du dbgrid "AlwaysShowEditor" est à False, le code fonctionne puisque "gdselected" est détecté (lorsque je selectionne une cellule du champ memo) et donc ma form qui contient le DBMemo est alignée en haut et à gauche de la cellule sélectionnée. Ma form s'aligne donc sur chaque cellule représentant le champ memo que je sélectionne.
Je fais une feuille avec une grille pour que l'utilisateur saisisse des données et il est plus convivial de le faire avec "AlwaysShowEditor" à True mais lorsque c'est le cas, "gdselected" n'est plus identifiable et l'alignement de la form contenant le DBMemo n'est plus respecté (la form reste à sa position de création).
J'ai essayé comme paliatif de faire ceci :
If (TDrawGrid(Sender).Row ModuleDeDonnees.Requete_Detail_Chantierdes.DataSet.RecNo) And (Column.FieldName 'des') Then
Begin
frmMiseEnFormeMemo.Left := griConsultationDesArticles.Left + Rect.Left + 2;
frmMiseEnFormeMemo.Top := griConsultationDesArticles.Top + Rect.top + 28;
End;
En rouge au lieu de (gdselected in state)
Mais celà fonctionne que pour le champ mémo de la première ligne de la dbgrid. C'est-à-dire que si je sélectionne le champ memo d'une autre ligne, la form reste aligné sur la première.
J'ai remarqué cependant que si je sélectionne un autre champ ("classique") avant de sélectionner le champ mémo ou je veux aller et bien là l'alignement fonctionne.
J'ai surfer un peu partout sur le net et ce sujet n'est pas abordé beaucoup de fois. Il est plus souvent question de l'affche du texte du champ blob memo sur la grille en remplacement de la traditionnelle inscription "(MEMO)". Et les différents cas que j'ai pu trouver ne précise pas comment régler ce problème lorsque "AlwaysShowEditor" est à True.