S.a Arkadaşlar, hayırlı Cuma'lar..
Listviewde istedigim satırların istedigim sütununa button eklemek istiyorum, tıklayınca o satırla ilişki olan şey için kriter pencerem açılacak.. ve bir butonumda sil görevini görecek..Acaba bunu Nasıl yapılabilirim?
Son bi soru, gruplama nasıl yapılıyor?
2 sütün var, biri uygulama, digeri degerler
uygulama altında müşteri ve stok var
degerlerde iste müşteri grubuna ait adı, soyadı, tlf gibi kriterler var.. buttonala seçilecek..
stokta stokkodu stokadı gibi...
Bi öneriniz varmıdır?
ListView de Button oluşturma..
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
-
- Üye
- Mesajlar: 135
- Kayıt: 14 Kas 2005 12:24
Re: ListView de Button oluşturma..
CustomDrawSubItem olayı ile button yerleştirmek mümkün.
Gruplama ile ilgili elimde bir örnek vardı. Bulabilirsem size gönderirim.
Kod: Tümünü seç
procedure TForm1.lv1CustomDrawSubItem(Sender: TCustomListView; Item: TListItem;
SubItem: Integer; State: TCustomDrawState; var DefaultDraw: Boolean);
var
btn1: TSpeedbutton;
leftpos: Integer;
begin
Application.ProcessMessages;
if SubItem = 1 then
begin
lv1.Items.BeginUpdate;
leftpos := Lv1.Column[1].Width ;
btn1 := TSpeedButton.Create(Self);
with btn1 do
begin
Parent := lv1;
Caption := 'Kriter';
Left := leftpos;
Top := (Item.Index +1) * (Lv1.Height div Lv1.VisibleRowCount);
Width := Lv1.Column[2].Width;
OnClick := MessageClick;
end;
leftpos := Lv1.Column[1].Width +Lv1.Column[2].Width ;
btn1 := TSpeedButton.Create(Self);
with btn1 do
begin
Parent := lv1;
Caption := 'Sil';
Left := leftpos;
Top := (Item.Index+1) * (Lv1.Height div Lv1.VisibleRowCount);
Width := Lv1.Column[3].Width;
OnClick := MessageClick;//Burada istediğniz olayı çağırabilirsiniz.
end;
lv1.Items.EndUpdate;
end;
end;
Re: ListView de Button oluşturma..
Tşk ederim.. Bunu deniycem, ancak biraz karışık geldi bana yine de deniycem.. sagolun..adnansirca yazdı:CustomDrawSubItem olayı ile button yerleştirmek mümkün.Gruplama ile ilgili elimde bir örnek vardı. Bulabilirsem size gönderirim.Kod: Tümünü seç
procedure TForm1.lv1CustomDrawSubItem(Sender: TCustomListView; Item: TListItem; SubItem: Integer; State: TCustomDrawState; var DefaultDraw: Boolean); var btn1: TSpeedbutton; leftpos: Integer; begin Application.ProcessMessages; if SubItem = 1 then begin lv1.Items.BeginUpdate; leftpos := Lv1.Column[1].Width ; btn1 := TSpeedButton.Create(Self); with btn1 do begin Parent := lv1; Caption := 'Kriter'; Left := leftpos; Top := (Item.Index +1) * (Lv1.Height div Lv1.VisibleRowCount); Width := Lv1.Column[2].Width; OnClick := MessageClick; end; leftpos := Lv1.Column[1].Width +Lv1.Column[2].Width ; btn1 := TSpeedButton.Create(Self); with btn1 do begin Parent := lv1; Caption := 'Sil'; Left := leftpos; Top := (Item.Index+1) * (Lv1.Height div Lv1.VisibleRowCount); Width := Lv1.Column[3].Width; OnClick := MessageClick;//Burada istediğniz olayı çağırabilirsiniz. end; lv1.Items.EndUpdate; end; end;
Re: ListView de Button oluşturma..
verdiginiz kodu çalştırdım.. tSpeedButton lara Undeclared identifier dedi, Tbutton yaptım onları, sonradaadnansirca
şu satırda hata verdi.
OnClick := MessageClick;//Burada istediğniz olayı çağırabilirsiniz.
hata kodu mesajı bu..
Kod: Tümünü seç
[DCC Error] Unit1.pas(146): E2003 Undeclared identifier: 'MessageClick'
-
- Üye
- Mesajlar: 135
- Kayıt: 14 Kas 2005 12:24
Re: ListView de Button oluşturma..
uses kısmına Buttons unitini dahil ettiğinizde button veya speedbutton u algılayacaktır. (Undeclared ... hatası)
MessageClick haricen tanımladığım bir procedure.
Farkedeceğinizi düşünerek açıklama yapmamıştım.
Örnek procedur aşağıdadır. Kendinize göre uyarlayabilirsiniz.
unitin ilgilii yerlerine aşağıdaki kodu yazın.
Buttonlar için runtime da yordam hazırlama ile ilgili forumda arama yapabilirsiniz.
Yine de yapamazsanız, örnek bir proje hazırlayıp gönderirim.
İyi çalışmalar.
MessageClick haricen tanımladığım bir procedure.
Farkedeceğinizi düşünerek açıklama yapmamıştım.
Örnek procedur aşağıdadır. Kendinize göre uyarlayabilirsiniz.
unitin ilgilii yerlerine aşağıdaki kodu yazın.
Kod: Tümünü seç
type
TForm1 = class(TForm)
..............................
procedure MessageClick(Sender : TObject);
...............
procedure TForm1.MessageClick(Sender: TObject);
begin
ShowMessage('Merhaba Dünya');
end;
Yine de yapamazsanız, örnek bir proje hazırlayıp gönderirim.
İyi çalışmalar.
Re: ListView de Button oluşturma..
adnansirca yazdı:uses kısmına Buttons unitini dahil ettiğinizde button veya speedbutton u algılayacaktır. (Undeclared ... hatası)
MessageClick haricen tanımladığım bir procedure.
Farkedeceğinizi düşünerek açıklama yapmamıştım.
Örnek procedur aşağıdadır. Kendinize göre uyarlayabilirsiniz.
unitin ilgilii yerlerine aşağıdaki kodu yazın.Buttonlar için runtime da yordam hazırlama ile ilgili forumda arama yapabilirsiniz.Kod: Tümünü seç
type TForm1 = class(TForm) .............................. procedure MessageClick(Sender : TObject); ............... procedure TForm1.MessageClick(Sender: TObject); begin ShowMessage('Merhaba Dünya'); end;
Yine de yapamazsanız, örnek bir proje hazırlayıp gönderirim.
İyi çalışmalar.
Tşk ederim.. Denedim ancak bi sonuca ulaşamadım, Rica etsem yapıcagınız örnek proje çok zamanını almayacaksa yapabilirmisiniz..
Re: ListView de Button oluşturma..
@adnansirca
tamamdır çalıştırabildim tşk ederim.. Düzenlemeye çalışıcam istedigim gibi umarım yapabilirim..
tamamdır çalıştırabildim tşk ederim.. Düzenlemeye çalışıcam istedigim gibi umarım yapabilirim..