Bonjour

J ai une table sqlite que j affiche dans un TDBGrid.

J ai un problème d'affichage, une colonne affiche (BOLB) une autre (VIEWMEMO). Je solutionne ainsi :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
procedure TForm1.DBGrid1DrawDataCell(Sender: TObject; const Rect: TRect;
  Field: TField; State: TGridDrawState);
var
  S: String;
begin
  S := Field.AsString;
  DBGrid1.Canvas.Pen.Color := clWindow;
  DBGrid1.Canvas.Brush.Color := clWindow;
  DBGrid1.Canvas.Rectangle(Rect);
  DBGrid1.Canvas.TextOut(Rect.Left, Rect.Top, S);
 
end;
Le pb est que quand je veux éditer une cellule, que je clique dessus, le texte apparaît comme sélectionné et il s agit de (BOLB) ou (VIEWMEMO) et non pas du contenu que j ai affiché après conversion avec Field.AsString

Est-ce possible d y remedier ?

Par ailleurs, les déclarations de ma table pour les colonnes qui apparaissent en BOLB et VIEWMEMO sont de même type TEXT. Pourquoi l un apparaît en BOLD et l autre en VIEWMEMO ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
CREATE TABLE "tb_spreads" (
	"id"	INTEGER PRIMARY KEY AUTOINCREMENT,
	"nom"	TEXT NOT NULL,
	"heure_debut"	TEXT NOT NULL,
	"heure_fin"	TEXT NOT NULL,
	"valeur"	REAL NOT NULL,
	"stop_G"	REAL
);
Je précise que je débute et si mes pratiques ne sont pas correctes, n hésitez pas à me le faire savoir que j'adopte de bonnes pratiques.

merci pour votre aide.