TUGS_ExLookUp Lazarus incremental search

Kylix, Lazarus, Freepascal ile ilgili konuları buraya yazabilirsiniz.
Cevapla
Kullanıcı avatarı
freeman35
Admin
Mesajlar: 2044
Kayıt: 12 Haz 2003 03:05
Konum: merkez camii yanı

TUGS_ExLookUp Lazarus incremental search

Mesaj gönderen freeman35 » 09 Mar 2014 06:36

Ekteki component, benim ürünümdür. Lazarus ve fpc (1.3 svn)kullanarak yazdığım bir bileşen. Component ı kurabilmek için rx kurulu olması gerekir. http://wiki.freepascal.org/RXfpc bu linkten rx library set i ve diğer bilgilerine ulaşabilirsiniz. Rx in sadece TRxDBGrid ni kullandım.
Component dblookup benzeri çalışıyor, Ata sınıf olarak "TCustomEditButton" kullandım, sebebi button a basılıp rxgrid visible edilebilir düşünmüştüm, bu eklenebilir, şuanki çalışma şekli aramaya başlandığı anda grid show ediliyor. Edit içine girilen değer, "ListDataSource" a bağlanmış Dataset in filtre özelliğini kullanmakta, yani Filter özelliği olan tüm TDataSet sınıfından olan componentlerle çalışması gerekir. (Test etmedim)
Component i kendim kullanmak için yazdım, o yüzden kosmetik, gösteriş kısmı yoktur. Meraklıları bunları yapıp bana bildirebilirler, hatta memnun olurum. Mesela source içine lisans ekleyebilirler. Ben basitçe lpk içine ekledim.
Component kullanımı dblookup taki gibi, DataSource ve Datafield içine yazılacak olan bileşenler, ListDataSource, Kullanıcıya gösterilecek, girid inde bağlanacağı datasource, ListField, kullanıcının yazdıklarını arayacağı field. Keyfield: bulunan kayıttan, DataField a atanacak değerin field adı.

Sakın, şuda olsun, bunuda ekle tarzında mesajlar yazmayın, göndermeyin. Yaptığınız değişiklikleri, property, event leri bana bildirin, eklediklerimi Component ı güncelleyip, buradan yayınlarım.
Bir ricamda tebrik vs gibi gereksiz mesaj yazmayın, kirlilik oluşturmayalım
Kolay gele

// version history
// 1.0.1 : First release
// 1.0.2 : * Added OnColumnsCreate event
// Triggered when Loaded
// On This event can setting Fgrid Colums or other grid properties
// * FGrid.ColumnByFieldName().Field. changed to
// Self.ListSource.DataSet.FieldByName().
v.1.0.2 a-)
örnek kod: Grid e istenen kolonlar eklenip ayarlamalar yapılabilinir.

Kod: Tümünü seç

Procedure TForm1.UGS_ExLookUp1ColumnsCreate(Sender: TObject; AListSource: TDataSource; AGrid: TRxDBGrid);
var X : TRxColumn;
begin
  if AGrid.ColumnByFieldName('ADI')=nil then begin
    X := AGrid.Columns.Add;
    X.FieldName    := 'ADI';
    X.Title.Caption:= 'Hasta adı';
    X.Width        := 120;
  end;

v.1.0.2 b-)
FGrid.ColumnByFieldName().Field. -> Self.ListSource.DataSet.FieldByName(). bu değişim sayesinde grid e Keyfield eklemeye gerek yok
Dosya ekleri
ExLookup-v102.7z
TUGS_ExLookUp v1.0.2 Lazarus incremental search
(4.83 KiB) 59 kere indirildi
ZAGOR TENAY TÜRK'tür... TÜRK kalacak...
Zoru başarırım, İmkansız zaman alır
FreeMan 35.5

Soru sormaya üşenmiyorsan, sorunun çözümünü yazmaya da üşenme !!!

Cevapla