2016-08-29 1 views
-3

J'ai problème avec une largeur de colonne DBGrid dans delphi. Je reçois le résultat de la base de données et j'ai trois colonnes ID, Name, Description. Nom et description a la largeur environ 2000+. J'essaie de changer en DBGrid > Columns > description > width = 300 mais ne fonctionne pas. Encore une fois quand je compaile mes colonnes doit beaucoup width. Comment slove cela? Je veux être ajusté dans le parent.colonne de changement Delphi DBGRID largeur

enter image description here

+0

Je ne l'ai jamais eu ce problème, et je l'habitude de traiter avec des champs DB qui sont très large (y compris les champs de mémo contenant des milliers de caractères). Comment pouvons-nous reproduire ce problème? –

+0

Does f.ex. 'DBGrid.Columns [1] .Width: = 100;' travail? –

Répondre

1

Il est nécessaire d'ajouter des colonnes objet. Par IDE: clic droit sur DBGrid, éditeur de colonnes puis "Ajouter tous les champs ..." Par runtime: vous devez créer un objet Column.

Ce petit exemple:

var vColumn: TColumn; 
begin 
    vColumn := DBGrid1.Columns.Add; 
    // Now you can assign the right properties 
    vColumn.Field := yourfield 
    vColumn.Width := yourwidth 
+0

En regardant l'image, il apparaît que la grille contient déjà les colonnes. À quoi sert-il d'ajouter plus de colonnes? –

+0

Si vous n'avez pas créé de TColumn DBGrid, affichez toujours toutes les colonnes disponibles dans l'ensemble de données. Il n'est pas clair si le changement de largeur est fait par IDE ou runtime = peut-être aucun objet Column n'est créé –

0

Vous devez définir DisplayWidth du champ de Dataset auquel DBGrid pointe.

enter image description here