PDA

View Full Version : Dblookupcombobox



parish
یک شنبه 13 شهریور 1384, 07:01 صبح
با سلام من دنبال یه dblookupcombo با خاصیت جستجوی افزایشی هستم اگه کسی سراغ داره لطفن بگه.

champion
جمعه 01 مهر 1384, 13:22 عصر
با سلام
منظور شما را از جستجوی افزایشی متوجه نشدم
ولی فکر کنم DXDBlookupcomboاز مجموعه کامپوننتهای DevExpressمشکل شما را حل کند

parish
شنبه 02 مهر 1384, 06:28 صبح
منظور من اینه که با تایپ ترتیبی حروف کلمه مورد نظر پیدا شود(جستجوی ترتیبی)

mehranFX
چهارشنبه 13 مهر 1384, 06:31 صبح
اینجا رو بیبن http://www.barnamenevis.org/forum/showthread.php?t=29853

jamal1384
شنبه 16 مهر 1384, 06:09 صبح
edSearchChange یک edit box میباشد



procedure TForm1.edSearchChange(Sender: TObject);
var txt, sfind:string;
len:integer;
begin
//don't do anything if user presses
//delete or backspace
if edFromCode = true then begin
edFromCode := false;
exit;
end;

//don't do anything if there is
//no text in edSearch
txt:=edSearch.Text;
if Length(txt)=0 then exit;

//goto nearest match
with Table1 do begin
SetKey;
FieldByName('Company').AsString:=edSearch.text;
GotoNearest;
end;

//calculate what part of text should be selected
sfind := Table1.FieldByName('Company').AsString;
len := Length(sfind) - Length(txt);
if len > 0 then begin
edFromCode:=true;
edSearch.Text:=sfind;
edSearch.SelStart:=Length(txt);
edSearch.SelLength:=len;
end;
end;

procedure TForm1.edSearchKeyDown
(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if (Key=VK_DELETE) or (Key=VK_BACK) then begin
if Lenght(edSearch.Text)>0 then begin;
//onchange event should not be executed...
edFromCode := true;
end;
end;
end;

jamal1384
شنبه 16 مهر 1384, 17:28 عصر
edSearchChange یک edit box میباشد



procedure TForm1.edSearchChange(Sender: TObject);
var txt, sfind:string;
len:integer;
begin
//don't do anything if user presses
//delete or backspace
if edFromCode = true then begin
edFromCode := false;
exit;
end;

//don't do anything if there is
//no text in edSearch
txt:=edSearch.Text;
if Length(txt)=0 then exit;

//goto nearest match
with Table1 do begin
SetKey;
FieldByName('Company').AsString:=edSearch.text;
GotoNearest;
end;

//calculate what part of text should be selected
sfind := Table1.FieldByName('Company').AsString;
len := Length(sfind) - Length(txt);
if len > 0 then begin
edFromCode:=true;
edSearch.Text:=sfind;
edSearch.SelStart:=Length(txt);
edSearch.SelLength:=len;
end;
end;

procedure TForm1.edSearchKeyDown
(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if (Key=VK_DELETE) or (Key=VK_BACK) then begin
if Lenght(edSearch.Text)>0 then begin;
//onchange event should not be executed...
edFromCode := true;
end;
end;
end;


اگه مشکلی پیش اومد کامنت بذار :چشمک:

ali_abbasi22145
یک شنبه 24 مهر 1384, 11:15 صبح
سلام

برنامه خود دلفی اگر اینجا می گذاشتید کار خیلی راحتتر بود (برنامه بافرم دلفی).