Formumda TCategoryPanelGroup var. İçinde 7 tane TControlPanel yerleştirilmiş durumda. Bu TCategoryPanel'lerin istediğim bir tanesini diğerlerinin sıralamasını bozmadan en yukarı taşımak istiyorum.
Baya uğraştım ama henüz başaramadım. Mevcut kod aşağıdaki gibidir. Yardımlar için şimdiden teşekkür ederim.
Kod: Tümünü seç
procedure TForm3.SpeedButton4Click(Sender: TObject);
var
i:Integer;
cp: TCategoryPanel;
begin
cpgTesis.CollapseAll; // Sıralanması gereken TCategoryPanelGroup
for I := cpgTesis.Panels.Count-1 downto 0 do begin
cp := cpgTesis.Panels[i];
cp.Visible := False; // Top değeri TCategoryPanel görünür iken değişmiyor. Değiştirsek bile alTop şeklinde TCategoryPanelGroup içinde olduğu için Top değeri eski değerine geri dönüyor.
cp.Top := i * 60; // Kapalı yükseklik değeri 30. Ben her birini bir o kadar artırıyorum ki E yukarı taşımak istediğim için yer açılsın.
end;
cp := cpgTesis.Panels[SpinEdit1.Value];
cp.Top := -1; // İstenilen TCategoryPanel'i en üste taşı
for I := cpgTesis.Panels.Count-1 downto 0 do begin
cp := cpgTesis.Panels[i];
cp.Visible := True;
end;
end;