Databaseden tarihe göre verileri Listview de listeliyorum, daha sonra listelenen verilere üst başlık eklemek için alttaki kodları kullanıyorum;
Her bir başlık bir kez eklenecek, fakat bir türlü üst başlıkları istediğim gibi yerleştiremedim.
İki faklı döngü denemedim;
1. (for S := 0 to Items.Count - 1 do) listviewde baştan başlayıp sona kadar tüm başlıkları eklemiyor;
2. (for S := Items.Count - 1 downto 0 do) sondan başlayıp en başa gidiyor fakat başlıkları üste değil de alt ekliyor.
Bu konuda ne yapabilirim?
Listview örnek:
Üst başlık 1
Fort 12.12.2016
Reno 12.12.2016
Mercedes 12.12.2016
Üst başlık 2
Fort 17.12.2016
Reno 17.12.2016
Mercedes 17.12.2016
Kod: Tümünü seç
procedure TForm2.UstTarih(Sender: TObject);
var
S: Integer;
begin
with ListViewRL do
begin
// for S := 0 to Items.Count - 1 do
for S := Items.Count - 1 downto 0 do
begin
RLTarihEkle(Items.Item[S].SubItems[7], Items[S].Index, ListViewRL);
end;
end;
end;
Kod: Tümünü seç
procedure TForm2.RLTarihEkle(TarihBul: String; RowNumber: Integer;
ListView: TListView);
var
I: Integer;
LI: TListItem;
BoolBulundu: Boolean;
begin
with ListViewRL do
begin
if Items.Count > 0 then
begin
BoolBulundu := False;
I := 0;
while (I < Items.Count) And (Not BoolBulundu) do
begin
if Pos(TarihBul, Items[I].SubItems[2]) > 0 then
BoolBulundu := True;
Inc(I);
end;
if Not BoolBulundu then
begin
LI := ListViewRL.Items.Insert(RowNumber + 1);
LI.Caption := 'Tarihi';
LI.SubItems.Add(' ');
LI.SubItems.Add(' ');
LI.SubItems.Add(TarihBul); /// ÜST BAŞLIK
LI.SubItems.Add(' ');
LI.SubItems.Add(' ');
LI.SubItems.Add(' ');
LI.SubItems.Add(' ');
LI.SubItems.Add(' ');
end;
end;
end;
end;