dbnavigator'deki butonlara icon import

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
must_sargin
Üye
Mesajlar: 216
Kayıt: 14 Şub 2004 03:13
Konum: Gebze
İletişim:

dbnavigator'deki butonlara icon import

Mesaj gönderen must_sargin »

iyi çalışmalar,
normalde dbnavigatorün üzerinde çıkan simgeleri değiştirip kendi icomlarımı koymak istiyorum. Acaba bunun için component var mı?
Şimdiden teşekkürler
Kullanıcı avatarı
aslangeri
Moderator
Mesajlar: 4322
Kayıt: 26 Ara 2003 04:19
Konum: Ankara
İletişim:

Mesaj gönderen aslangeri »

S.A.
Kendin bir tool bara istediğin resimleri koyup kodları yazdıktan sonra komponent template oluşturabilirsin. Hazır comp için comp sitelerinden (torry) gibi dbnavigator diye aratıp bulabilirsin.
Birde delphinin yüklü olduğu yerde lib dizinin içinde "dbctrls.res" resource dosyası var. delphi ile birlikte gelen imageedit dosyası ile bu nun içini değiştirebilirsin. Bunun standart resimleri değiştirmesi gerekir ama tam emin değilim yani denemedim ama bi arkadaş bi ara uğraşıyordu sonucu hatırlamıyorm.
kolay gelsin.
Duyduğun Şeylerin Söylediklerim Olduğuna Eminim Ama
Anladığın Şeylerin Anlatmak İstediklerim Olduğuna Emin Değilim
Kullanıcı avatarı
derya
Kıdemli Üye
Mesajlar: 68
Kayıt: 16 May 2004 02:43
Konum: Almanya/Bonn
İletişim:

Mesaj gönderen derya »

Kod: Tümünü seç

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[i].ClassName = 'TNavButton' then 
        begin 
          case TNavButton(Controls[i]).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[i]).Glyph := tempGlyph; 
        end; 
      end; 
    end; 
  finally 
    tempGlyph.Free; 
  end; 
end; 

procedure TForm1.Button1Click(Sender: TObject); 
begin 
  ChangeDBNavImage(DBNavigator1); 
end; 
Customer: "I'm running Windows XP."
Tech Support: "Yes."
Customer: "My computer isn't working now."
Tech Support: "Yes, you said that."
must_sargin
Üye
Mesajlar: 216
Kayıt: 14 Şub 2004 03:13
Konum: Gebze
İletişim:

Mesaj gönderen must_sargin »

iyi çalışmalar,
yazdığınız kodları aldığımda istediğim işlemi yaptı fakat dbnavigatorun kendi iconlarının boyunda gösterdi yani benim iconlarımı tam boyutunda göstermedi.acaba icon boyut ayarı yapabilirmiyiz?
şimdiden teşekürler.
must_sargin
Üye
Mesajlar: 216
Kayıt: 14 Şub 2004 03:13
Konum: Gebze
İletişim:

Mesaj gönderen must_sargin »

iyi çalışmalar,
normal ico dosyaları bulup onları dbnavigator'e getirdiğimde istediğim boyutta gösterdi. yardımınız için teşekkürler... :wink:
Cevapla