Programlama | Programlama Dilleri | C Programlama Dili |C++

Anasayfa Programlama C++ Builder Header Control İle Windows Gezgininde Liste Modunda Özelliklerin Boyutlandırılması


Header Control İle Windows Gezgininde Liste Modunda Özelliklerin Boyutlandırılması

AÇIKLAMA

C++ Builder 6 ile uyumludur. Windows gezgininde iken liste görünümüne geçtiğinizde dosyanın özelliklerini gösteren yapılar (isim listesi, boyutlar listesi,tür listesi,değiştirme tarihi listeleri vs) belirir. İşte bu listelerin boylarının uzunlukları yukarıdan header control nesnesi ile ayarlanır. Biz kullanıcılar olarak windows bu özellikleri göremediğimiz durumlarda çubuğun boyutunu uzatıp kısaltarak kendimiz için gerekli bilgileri görüyoruz. İşte bu programda benzer işlevi kendi programlarınızda yapabilmeniz amacıyla tasarlanmıştır. İçerisinde 3 adet ListBox bulunmakta, HeaderControl nesnesinin Section özelliğinden kaç adet sütun olacağı belirtilmelidir. Herbirinin başlığı ilgili Section parçasının(Section[0] gibi; listeyi oluşturunca zaten başlıkları tıklayarak da bu özellikleri görebilirsiniz) içine girilmelidir. Kaydırma işlemi otomaik değildir bu sebepten kullanıcı bir section'u boyutlandırmak istediğinde diğer tüm sectionların boyutlarının tekrardan ayarlanması gerekir. Aşağıdaki ana kod parçacağı (HeaderControl1SectionResize fonksiyonu) işte bu boyutlandırmanın tam olarak yapılabilmesi amacıyla yazılmııştır.

Programın Tamamını Aşağıdaki Linkten İndirebilirsiniz

Linki Görebilmeniz İçin Üye Olmanız Gerekmektedir...

Üye Kayıt 

Program Kodu:

Unit1.cpp

  1. //---------------------------------------------------------------------------
  2.  
  3. #include <vcl.h>
  4. #pragma hdrstop
  5.  
  6. #include "Unit1.h"
  7. //---------------------------------------------------------------------------
  8. #pragma package(smart_init)
  9. #pragma resource "*.dfm"
  10. TForm1 *Form1;
  11. //---------------------------------------------------------------------------
  12. __fastcall TForm1::TForm1(TComponent* Owner)
  13.         : TForm(Owner)
  14. {
  15. }
  16. //---------------------------------------------------------------------------
  17.  
  18. void __fastcall TForm1::FormCreate(TObject *Sender)
  19. {
  20. Form1->ActiveControl=HeaderControl1;
  21. ListBox1->Color=clCream;
  22. ListBox1->Items->Add("Celal Atalar");
  23. ListBox2->Items->Add("Bilgisayar Yüksek Mühendisi");
  24. ListBox3->Items->Add("05054674468");
  25. }
  26. //---------------------------------------------------------------------------
  27. void __fastcall TForm1::HeaderControl1SectionResize(
  28.       THeaderControl *HeaderControl, THeaderSection *Section)
  29. {
  30. int secili=Section->Index;
  31. int genislik=HeaderControl1->Sections->Items[secili]->Width;
  32. if(secili==0)
  33. {
  34. ListBox1->Width=genislik;
  35. ListBox2->Left=genislik;
  36. ListBox3->Left=ListBox2->Left+ListBox2->Width;
  37. }
  38. else if(secili==1)
  39. {
  40. ListBox2->Width=genislik;
  41. ListBox3->Left=ListBox1->Width+ListBox2->Width;
  42. }
  43. else if(secili==2)
  44. {
  45.  ListBox3->Width=genislik;
  46. }
  47.  
  48. }
  49. //---------------------------------------------------------------------------
  50.  
  51.  
  52.  
  53.  

Yorumlar (0)
Sadece kayıtlı kullanıcılar yorum yazabilir!
Son Güncelleme ( Pazar, 02 Eylül 2012 23:32 )