PDA

View Full Version : Dbgrid



matinebi
پنج شنبه 15 فروردین 1387, 10:59 صبح
چطور میشه یک سری رکورد خاص را که مثلا فیلدهایی محتوی "مقدماتی"هستند را در dbgrid نمایش داد
یا اینکه همه را نمایش دهد و آنهایی که محتوی "مقدماتی" هستند را highlight کند یا به رنگ خاصی نمایش دهد

dkhatibi
پنج شنبه 15 فروردین 1387, 11:43 صبح
[QUOTE]چطور میشه یک سری رکورد خاص را که مثلا فیلدهایی محتوی "مقدماتی"هستن[/QUOTE
]
متد Filter برای این منظور است.


table1.filtered:=false;
table1.filter:="Field=Quotedstr(مقدماتی)"
table1.filter:=true;

یا اینکه از دستورات Sql بهره گیرید.
رنگی کردن Dbgrid این کلمات را جستجو کنید

matinebi
پنج شنبه 15 فروردین 1387, 17:29 عصر
سلام دوست عزیز من این کد رو نوشتم ولی error میده وقتی به جای مقدماتی عدد قرار میدم جستجو میکنه ایراد از فارسی بودنش هست آیا راهی وجود داره
DataModule4.ADOQuery3.Filtered:=false
'مقدماتی=DataModule4.ADOQuery3.Filter:='dor e
DataModule4.ADOQuery3.Filtered:=true

matinebi
پنج شنبه 15 فروردین 1387, 17:47 عصر
تابع Quotedstr(مقدماتی)رو error میده

فرزاد دلفی باز
جمعه 16 فروردین 1387, 00:55 صبح
procedure TForm1.DBGrid1DrawColumnCell(Sender: TObject;
const Rect: TRect; DataCol: Integer; Column: TColumn;
State: TGridDrawState);
begin
With(Sender as TDBGrid) do
begin
if DBGrid1.Fields[1].AsString='مقدماتی' then
Canvas.Brush.Color:=clBlue;
Canvas.Font.Color:=Font.Color;
DefaultDrawColumnCell(rect,1,Column,State);
end;

delphiprog3000
دوشنبه 26 فروردین 1387, 17:54 عصر
سلام.

در ادامه مطلب دوستمون شما میتوانید برای رنگی کردن dbgrid از flag استفاده کنید. که من در این مثال به کار بردم.

کد:



var flag3,flag4:boolean;

procedure Tsearch_form.DBGrid1DrawColumnCell(Sender: TObject;
const Rect: TRect; DataCol: Integer; Column: TColumn;
State: TGridDrawState);
begin
with Qry_search_ticket do
begin
close;
sql.Text:='select * from tblticket where code_id like '+QuotedStr(edt_code_id.Text);
open;
if not IsEmpty then
flag4:=false
else flag4:=true;
end;
if flag3=true then
DBGrid1.Canvas.Brush.Color:=clWhite;
if flag3=false then
DBGrid1.Canvas.Brush.Color:=clgray;
DBGrid1.DefaultDrawColumnCell(Rect,DataCol,Column, State);
end;

موفق باشید......................