Arşiv Anasayfa Veritabanı Makaleleri
Sayfalar: 1
DBNavigator Gönderen: Fatih Tarih: 09 October 2005 17:15:14
Veriler üzerinde güncelleme , silme , yeni kayıt ekleme , ileri - geri gitme vb. gibi işlemlerin yapıldığı araç çubuğudur.Örneğimizde formumuza Data Controls kısmından DbNavigator yerleştirelim ve Object Inspector kısmında Data Source özelliğini Data Source1 yapalım.Programı çalıştırdığınız zaman istediğiniz işlemleri DbNavigator çubuğuyla yapabileceğinizi göreceksiniz.Bu çubuktaki özellikleri inceleyelim.



Anlamları Ve Kod Karşılıkları
1 - First :İlk kayda gider
:
Table1.First;

2 - Prior :Bir önceki kayda gider
:
if not Table1.Bof Then //İlk Kayıtta Değilse
Table1.Prior;

3 - Next :Bir sonraki kayda gider
:
if not Table1.Eof Then //Son Kayıtta Değilse
Table1.Next;

4 - Last :En son kayda gider
:
Table1.Last;

5 - Insert :Mevcut kayıttan önce araya bir kayıt ekler.insert yerine Append kullanırsanız yeni kayıt tablonun sonuna eklebnir
:
Table1.insert;
editilkalan.setfocus; // Tablonun İlk Alanına Bağlı Bileşeni Kursörü Bırakıyoruz.

6 - Delete :Mevcut kaydı siler bir sonraki kaydı görüntüler
:
Var
Cevap:Word;
Begin
Cevap:=Application.MessageBox(' silinsin  mi? ','Onay',MB_YesNo);
if Cevap=mrYes then
Table1.delete;

7 - Edit :Mevcut kaydın değiştirilmesini sağlar
:
Table1.Edit;
 

8 - Post :Yapılan değişiklikleri veri tabanı dosyasına yazar
 
:
Table1.Post;

9 - Cancel :Girilen değişiklikleri iptal eder
:
Table1.Cancel;

10 - Refresh :Mevcut kaydı yeniden görüntüler .Yani Güncelleme yapar
:
Table1.Refresh;

 
Yukarıdaki Kodları İlgili Buttonların OnClick Olaylarına yazarsannız Kişisel DBNavigatorunuzu yapabilirsiniz.
Eğer DBNavigator butonuna tıklamayla oluşan eylemi iptal etmek ihtiyacınız varsa, bunu componentin BeforeAction olayında aşağıdaki kodu yazarak halledebilirsiniz.
:
procedure TDBForm.DBNavigatorBeforeAction(Sender: TObject;
Button: TNavigateBtn) ;
begin
if (Button = nbinsert) then // Button  adlarrının önüne nb ekleyerek kullanın
begin
SysUtils.Abort; //Ekleme eylemini iptal et.
end;
end;



 DbNavigator'ün ShowHint özelliği True yapılarak bu düğmelerin ne işe yaradığı üzerine gelindiği zaman yazacaktır. Bu Yazıları Türkçeleştirmek isterseniz Bileşenin Hints Özelliğinden yaralanabilirsiniiz.


ConfirmDelete Özelliğini False yaparaak Kaydı silerken onay istememesini,

visibleButtons özelliği altında bulunan seçeneklerlede istediğiniz buttonun görünmemesini sağlayabilirsiniz

TDBNavigator Bileşeninin Resimlerini Değiştirme
:
procedure ChangeDBNavImage(DBnav: TDbNavigator);
var
i: Integer;
tempGlyph: TBitmap;
ExePath: string;
begin
ExePath := ExtractFilePath(Application.ExeName);
tempGlyph := TBitmap.Create;
try
with DBNav do begin
for i := 0 to ControlCount - 1 do begin
if Controls.ClassName = 'TNavButton' then begin
case TNavButton(Controls).Index of
nbFirst: tempGlyph.LoadFromFile(ExePath + 'first.bmp');
nbPrior: tempGlyph.LoadFromFile(ExePath + 'previous.bmp');
nbNext: tempGlyph.LoadFromFile(ExePath + 'Next.bmp');
nbLast: tempGlyph.LoadFromFile(ExePath + 'Last.bmp');
nbInsert: tempGlyph.LoadFromFile(ExePath + 'Insert.bmp');
nbDelete: tempGlyph.LoadFromFile(ExePath + 'Delete.bmp');
nbEdit: tempGlyph.LoadFromFile(ExePath + 'Edit.bmp');
nbPost: tempGlyph.LoadFromFile(ExePath + 'Post.bmp');
nbCancel: tempGlyph.LoadFromFile(ExePath + 'Cancel.bmp');
nbRefresh: tempGlyph.LoadFromFile(ExePath + 'Refresh.bmp');
end;
TNavButton(Controls).Glyph := tempGlyph;
end;
end;
end;
finally
tempGlyph.Free;
end;
end;


Kullanımı
:
procedure TForm1.Button1Click(Sender: TObject);
begin
ChangeDBNavImage(DBNavigator1);
end;

Ynt: DBNavigator Gönderen: Mikdad Tarih: 09 November 2005 10:07:51
Hocam Şu navigator e bir türlü ısınamadım onu kullanacağıma button yapıyorum speed button çok hoş duruyorlar Very Happy
Ynt: DBNavigator Gönderen: Fatih Tarih: 09 November 2005 13:29:35
Hocam Şu navigator e bir türlü ısınamadım onu kullanacağıma button yapıyorum speed button çok hoş duruyorlar Very Happy
bencede Smile
Ynt: DBNavigator Gönderen: Mikdad Tarih: 17 November 2005 18:50:45
Hocam Şu navigator u editliyorlarmış nasıl yapılıyor bu yani o soğuk buttonlar yerine başka buttonlar koyyuyorlar
Ynt: DBNavigator Gönderen: Fatih Tarih: 18 November 2005 11:10:42
Hocam Şu navigator u editliyorlarmış nasıl yapılıyor bu yani o soğuk buttonlar yerine başka buttonlar koyyuyorlar
aşağıda yazıyor iyi oku Smile
Ynt: DBNavigator Gönderen: Mikdad Tarih: 18 November 2005 11:52:16
Eyvallah
demek gözlüklerimin numarısı yine değişti Very Happy
Ynt: DBNavigator Gönderen: pcmaniac Tarih: 26 December 2006 06:28:47
e kabiliyetli arkadaslar bunu birer kompenent yapsinlar Smile
Ynt: DBNavigator Gönderen: afacanramco Tarih: 23 March 2008 16:27:31
Çok Teşekkür Ederim
Çok Güzel Bir Konuya değinmişsin.Ellerine sağlık.