treeview uzerinde checkbox

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
filiz
Üye
Mesajlar: 82
Kayıt: 24 Ara 2003 08:11
Konum: İzmir

treeview uzerinde checkbox

Mesaj gönderen filiz »

her bir node için checkboxu bulunan treeview kullanan varmı?

iyi çalışmalar
Kullanıcı avatarı
delphi.net
Üye
Mesajlar: 67
Kayıt: 01 Nis 2007 05:30
Konum: mUĞLa

Mesaj gönderen delphi.net »

http://www.dosyaekle.com/do2.php?x=VirtualTreeview.rar

umarım işinizi görür

iyi çalışmalar

kolay gelsin...
filiz
Üye
Mesajlar: 82
Kayıt: 24 Ara 2003 08:11
Konum: İzmir

Mesaj gönderen filiz »

içindeki demolardan baska ornek varmı elinizde.cunku items ekliyemedim
Kullanıcı avatarı
delphi.net
Üye
Mesajlar: 67
Kayıt: 01 Nis 2007 05:30
Konum: mUĞLa

Mesaj gönderen delphi.net »

fırsat bulursam hazırlamaya çalışırım..
t-hex
Kıdemli Üye
Mesajlar: 531
Kayıt: 18 Mar 2005 02:45
Konum: İstanbul/Antalya
İletişim:

Mesaj gönderen t-hex »

VirtualTreeView alıştığınız treeview'den daha farklı bir yapıyla çalışır. Bileşenin görüntülediği veri hakkında bilgisi yoktur. Siz eventları kullanarak bu bilgiyi ona verirsiniz.

Record tipinde veriyi tutacak bir yapı tanımlayın.
Örneğin

Kod: Tümünü seç

  PNodeData = ^TNodeData;
  TNodeData = record
     AdSoyad : String;
     Yas : Integer;
  end;
OnGetNodeDataSize olayını kullanarak her node verisi için ne kadar bellek ayırması gerektiğini belirtin.

Kod: Tümünü seç

procedure TForm1.VirtualStringTree1GetNodeDataSize(
  Sender: TBaseVirtualTree; var NodeDataSize: Integer);
begin
  NodeDataSize := sizeof(TNodeData);
end;
OnGetText olayını kullanarak node metnini nasıl oluşturacağını öğretin.

Kod: Tümünü seç

procedure TForm1.VirtualStringTree1GetText(Sender: TBaseVirtualTree;
  Node: PVirtualNode; Column: TColumnIndex; TextType: TVSTTextType;
  var CellText: WideString);
var
  NodeData : PNodeData;
begin
  NodeData := Sender.GetNodeData(Node);
  CellText := NodeData.AdSoyad + ' (' + Inttostr(NodeData.Yas)+ ')';
end;
Checkbox görüntülenmesi için Options.MiscOption.CheckSupport özelliğini true yapın.

Nodeları eklemek için ya AddChild metodunu kullanın

Kod: Tümünü seç

  with VirtualStringTree1 do begin
    Node := AddChild(RootNode);
    NodeData := VirtualStringTree1.GetNodeData(Node);
    Node.CheckType := ctCheckBox;
    NodeData.AdSoyad := 'test test';
    NodeData.Yas := 12;
  end;
ya da OnInitNode, OnInitChildren olaylarını kullanın. Bu olayların tetiklenmesi için RootNodeCount özelliğini değiştirin.

Kısaca; KOD yazmanız lazım.
Cevapla