ذخيره تنظيمات DBGrid
شايد براي شما پيش آمده باشد كه پس از نوشتن يك برنامه ديتابيس خواسته باشيد كه DBGrid را بر اساس سليقه خود تنظيم كنيد براي مثال همانند شكل:

1- اندازه ستونها را بزرگتر يا كوچكتر كنيد
2- رنگ عنوان و يا رنگ فونتها و يا رنگ سلولها و ... را تغير دهيد.
3- بخواهيد جاي ستونها رو تغييردهيد .
خوب بعضي از اين كارها اتوماتيك انجام مي شوند مثل آيتم 1 و 3 و براي بعضيها بايد اين امكانات را فراهم كنيم مانند گزينه 2 .... اما در هر صورت اين تنظيمات موقتي هستند و تا زماني كه در برنامه هستيد اعمال مي شوند و با خروج از برنامه و بازگشت مجدد مشاهده مي كنيد كه تمام اون تنظيمات از بين رفته و به حالت اوليه برگشته!!! را جل چيست؟؟
زياد نگران نباشيد راه حل بسيار ساده اي وجود دارد. شايد يكي از راه حلها استفاده از فايلهاي INI باشد بله مي تواند باشد اما كد نويسي زيادي نياز دارد چون تنظيمات گريد زياد هستند(اندازه، موقعيت، رنگ ستونها، رنگ سطرها، نوع و رنگ فونتها و....) بهترين روش استفاده از متد زير در هنگام خروج از فرم ( Form.OnClose ) مي باشد:
DBGrid.Columns.SaveToFile('مسير و نام فايل');
procedure TForm1.FormShow(Sender: TObject);
begin
DBGrid.Column.SaveToFile('c:\test.dat');
end;
و براي باز گرداني تنظيمات هنگام ورود به فرم ( Form.OnShow ) از متد زير استفاده كنيد:
DBGrid.Columns.LoadFromFile('مسير و نام فايل');
procedure TForm1.FormShow(Sender: TObject);
begin
DBGrid.Columns.LoadFromFile('c:\test.dat');
end;
ديديد كه به سادگي امكان ايجاد يك DBGrid سفارشي ميسر است.
من در پايين يك يونيتي ساختم با نام DBUser مي توانيد انرا دانلود كنيد و سپس آنرا به پروژتون اضافه كنيد و سپس توي قسمت Uses مانند زير آنرا اضافه كنيد:
….
var
Form1: Tform1;
implementation
uses
{$R *.dfm}
….
درون اين يونيت يك زيربرنامه اي با نام DBGrid) مورد نظر SaveGrid( براي ذخيره تنظيمات موجود مي باشد. كافيست شما از اين پروسيجر در هنگام خروج از فرم استفاده كنيد. براي مثال SaveGrid( DBGrid1 );.
درون اين يونيت يك زيربرنامه اي با نام DBGrid) مورد نظر LoadGrid ( براي بازيابي تنظيمات موجود مي باشد. كافيست شما از اين پروسيجر در هنگام ورود به فرم استفاده كنيد. براي مثال LoadGrid ( DBGrid1 );.
پروسيجر SaveGrid بطور خودكار يك فولدري با نام Config درون همان مسير برنامه شما ايجاد مي كند و درون آن تنظيمات DBGrid را با نام براي مثال Form1DBGrid1.cfg ذخيره مي كنه. و پروسيجر LoadGrid از همان فايلها استفاده خواهد كرد