Clomosy | Forum Ana Sayfa
Forum Anasayfa Forum Anasayfa > Genel Programlama > Genel İşlemler
  Aktif Konular Aktif Konular RSS - Panellerin açılıp kapanması
  SSS SSS  Forumu Ara   Etkinlikler   Kayıt Ol Kayıt Ol  Giriş Giriş

Clomosy Resmi Forum Sitesidir. Amacımız kullanıcılarımıza, iş ortaklarımıza, danışmanlara, yazılımcılara programlarımız hakkında destek ve bilgi vermektir.

Panellerin açılıp kapanması

 Yanıt Yaz Yanıt Yaz
Yazar
Mesaj
  Konu Arama Konu Arama  Topic Seçenekleri Topic Seçenekleri
kaanl0 Açılır Kutu İzle
Yeni Üye
Yeni Üye
Simge

Kayıt Tarihi: 16 Eylül 2025
Konum: konya
Durum: Aktif Değil
Puanlar: 36
Mesaj Seçenekleri Mesaj Seçenekleri   Teşekkürler (0) Teşekkürler(0)   Alıntı kaanl0 Alıntı  Yanıt YazCevapla Mesajın Direkt Linki Konu: Panellerin açılıp kapanması
    Gönderim Zamanı: Dün Saat 14:31
Projede iç içe paneller oluşturuyorum dıştaki panele bastığımızda sadece onun içindeki panellerin kapanmasını istiyorum ama şuanki halinde  bütün iç paneller kapanıyor. Sadece kendi içindeki panellerin kapanması için çok deneme yaptım ama sürekli hata aldım. istediğim şeyi nasıl yapabilirim. Kodun çalışan halini atıyorum.

var
MainForm:tclForm;
TitlePnl,NavbarPnl,StocksCategoryPnl,StocksPnl,OpacityPnl,AddEditStockPopUp:TclProPanel;
TitleLbl,ItemPieceValueLbl,ItemPieceLbl,CategoryNameLbl,ItemPriceLbl,StocksNameLbl,SupplyTimeLbl,SupplyTimeValueLbl,Piecelbl,PieceXlbl,PieceValuelbl,AddStockLbl,EditStockLbl:TClProLabel;
HomeBtn,BackBtn,SortBtn,AddStockBtn,DetailsBtn,EditStockBtn,CloseBtn,AddBtn:TClProButton;
CategoryItemImage,StocksImage:TClProImage;
StocksCategoryCount:integer;
vScroll:TCLVertScrollBox;
StocksCount:integer;
AllCategoriesOpen: boolean;



 void SetObjectMargins(AObject,AValue)
  {
  AObject.Margins.Top = AValue;
  AObject.Margins.Bottom = AValue;
  AObject.Margins.Left = AValue;
  AObject.Margins.Right = AValue;
}

function IconSelect(IconUI):String
  var
  Output: String;
  {
  case IconUI of
  {
    'ClosmosyLogo':Output = 'https://resmim.net/cdn/2025/10/22/jV6v6Q.png';
    'AdminManagementBtnUI':Output = 'https://resmim.net/cdn/2025/10/24/ju0eoT.png';
    'BackArrowBtnUI':Output = 'https://resmim.net/cdn/2025/10/24/ju1STG.png';
    'HomePageBtnUI':Output = 'https://resmim.net/cdn/2025/10/24/ju1fIT.png';
    'ItemsBtnUI':Output = 'https://resmim.net/cdn/2025/10/24/ju1mZL.png';
    'ManagementBtnUI':Output = 'https://resmim.net/cdn/2025/10/24/ju1Tqh.png';
    'OrderChecklistBtnUI':Output = 'https://resmim.net/cdn/2025/10/24/ju1jdK.png'; 
    'OrdersBtnUI':Output = 'https://resmim.net/cdn/2025/10/24/ju1CGQ.png';
    'SaveBtnUI':Output = 'https://resmim.net/cdn/2025/10/24/ju1gBc.png';   
    'ShiftBtnUI':Output = 'https://resmim.net/cdn/2025/10/24/ju18QR.png';
    'ShiftsBtnUI':Output = 'https://resmim.net/cdn/2025/10/24/ju1Bzj.png';
    'SortBtnUI':Output = 'https://resmim.net/cdn/2025/10/24/ju1rXI.png';
    'StocksBtnUI':Output = 'https://resmim.net/cdn/2025/10/24/ju15f6.png';
    'TablesBtnUI':Output = 'https://resmim.net/cdn/2025/10/24/ju1RK8.png';
    'ItemBookBtnUI':Output = 'https://resmim.net/cdn/2025/10/30/jJzG6h.png';
    'CategoryItemImageUI':Output ='https://resmim.net/cdn/2025/11/14/jFyEzn.png';
    'AddStockBtnUI':Output = 'https://resmim.net/cdn/2025/11/17/jqzzkG.png';

    else{
      ShowMessage('Resim Yok');
    }
  }
  Result=Output;
}


void TitlePnlV
  {
  TitlePnl = MainForm.AddNewProPanel(MainForm,'TitlePnl');
  TitlePnl.Align = alMostTop;
  TitlePnl.Height = (MainForm.clHeight*18)/100;
  TitlePnl.Width = (MainForm.clWidth*100)/100;
  TitlePnl.Margins.Top = (MainForm.clHeight * -0.0715); // -60 / 839 ≈ -0.0715
  TitlePnl.Margins.Left = (MainForm.clWidth * -0.0254); // -10 / 393 ≈ -0.0254
  TitlePnl.Margins.Right = (MainForm.clWidth * -0.0254); // -10 / 393 ≈ -0.0254
  TitlePnl.clProSettings.BorderWidth = 3;
  TitlePnl.clProSettings.BorderColor = clAlphaColor.clHexToColor('#3a3a3a');
  TitlePnl.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#4caf50');
  TitlePnl.SetclProSettings(TitlePnl.clProSettings);


  TitleLbl = MainForm.AddNewProLabel(TitlePnl,'TitleLbl','STOKLAR');
  TitleLbl.Align = alCenter;
  TitleLbl.Width = (MainForm.clWidth * 1.0178);
  TitleLbl.Height = (MainForm.clHeight * 0.1073);
  TitleLbl.Margins.Top = (MainForm.clHeight * 0.0715); // 60 / 839 ≈ 0.0715
  TitleLbl.clProSettings.FontSize = 30;
  TitleLbl.clProSettings.FontVertAlign = palcenter;
  TitleLbl.clProSettings.FontHorzAlign = palcenter;
  //TitleLbl.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#1e1e1e');
  TitleLbl.clProSettings.FontColor = clAlphaColor.clHexToColor('#ffffff');
  TitleLbl.clProSettings.TextSettings.Font.Style = [fsBold];
  MainForm.AddNewEvent(TitleLbl,tbeOnClick,'');
  TitleLbl.SetclProSettings(TitleLbl.clProSettings);
  
}
void NavbarPnlV
  {
  NavbarPnl = MainForm.AddNewProPanel(MainForm,'NavbarPnl');
  NavbarPnl.Align = alMostBottom;
  NavbarPnl.Height = (MainForm.clHeight*8)/100;
  NavbarPnl.Width = (MainForm.clWidth*100)/100;
  NavbarPnl.Margins.Left = (MainForm.clWidth * -0.0254); // -10 / 393 ≈ -0.0254
  NavbarPnl.Margins.Right = (MainForm.clWidth * -0.0254); // -10 / 393 ≈ -0.0254
  NavbarPnl.Margins.Bottom = (MainForm.clHeight * -0.0119); // -10 / 839 ≈ -0.0119
  NavbarPnl.clProSettings.BorderWidth = 3;
  NavbarPnl.clProSettings.BorderColor = clAlphaColor.clHexToColor('#3a3a3a');
  NavbarPnl.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#4caf50');
  NavbarPnl.SetclProSettings(NavbarPnl.clProSettings);
  
  HomeBtn = MainForm.AddNewProButton(NavbarPnl,'HomeBtn','');
  HomeBtn.Align = alCenter;
  HomeBtn.Height = (NavbarPnl.Height*105)/100;
  HomeBtn.Width = (NavbarPnl.Width*30)/100;
  HomeBtn.Margins.Top = (MainForm.clHeight * -0.0596); // -50 / 839 ≈ -0.0596
  HomeBtn.clProSettings.PictureSource = IconSelect('HomePageBtnUI');
  HomeBtn.SetclProSettings(HomeBtn.clProSettings);
  
  BackBtn = MainForm.AddNewProButton(NavbarPnl,'BackBtn','');
  BackBtn.Align = alCenter;
  BackBtn.Height = (NavbarPnl.Height*105)/100;
  BackBtn.Width = (NavbarPnl.Width*30)/100;
  BackBtn.Margins.Top = (MainForm.clHeight * -0.0596); // -50 / 839 ≈ -0.0596
  BackBtn.Margins.Right = (MainForm.clWidth * -0.6361); // -250 / 393 ≈ -0.6361
  BackBtn.clProSettings.PictureSource = IconSelect('BackArrowBtnUI');
  BackBtn.SetclProSettings(BackBtn.clProSettings);
    
  SortBtn = MainForm.AddNewProButton(NavbarPnl,'SortBtn','');
  SortBtn.Align = alCenter;
  SortBtn.Height = (NavbarPnl.Height*105)/100;
  SortBtn.Width = (NavbarPnl.Width*30)/100;
  SortBtn.Margins.Top = (MainForm.clHeight * -0.0596); // -50 / 839 ≈ -0.0596
  SortBtn.Margins.left = (MainForm.clWidth * -0.6361); // -250 / 393 ≈ -0.6361
  SortBtn.clProSettings.PictureSource = IconSelect('SortBtnUI');
  SortBtn.SetclProSettings(SortBtn.clProSettings);
  
}
void MainPnlV   
  {
  vScroll = MainForm.AddNewVertScrollBox(MainForm,'vScroll');
  vScroll.Align = alCenter;
  vScroll.Height = (MainForm.clHeight*80)/100;
  vScroll.Width = (MainForm.clWidth*98)/100;
  vScroll.Margins.bottom = 50;
}



void ToggleCategories(Sender: TObject)
var
  I, J: integer;
  TempPnl: TclProPanel;
  NormalHeight: single;
  NormalMargin: integer;
{
  NormalHeight = 74; // Panelin orijinal yüksekliği
  NormalMargin = 5; //  SetObjectMargins'tan (7)

  // Durumu tersine çevir (açık → kapalı, kapalı → açık)
  AllCategoriesOpen = not AllCategoriesOpen;

  // TÜM alt panellerin yüksekliğini ve margin'ini değiştir
  for (I = 1 to StocksCategoryCount) {
    for (J = 1 to StocksCount) {
      TempPnl = MainForm.clFindComponent('StocksPnl' + IntToStr(I) + '_' + IntToStr(J));
      if (TempPnl <> nil) {
        if (AllCategoriesOpen) {
          TempPnl.Height = NormalHeight;
          TempPnl.Margins.Top = NormalMargin;
          TempPnl.Margins.Bottom = NormalMargin;
        } else {
          TempPnl.Height = 0;
          TempPnl.Margins.Top = 0;
          TempPnl.Margins.Bottom = 0;
        }
      }
    }
  }


}

void StocksCategoryPnlVD
  var
  I,J:integer;
  {
  
  for (I = 1 to StocksCategoryCount) {
  StocksCategoryPnl = MainForm.AddNewProButton(vScroll,'StocksCategoryPnl'+IntToStr(I),'');
  StocksCategoryPnl.Align = alTop;
  StocksCategoryPnl.Height = 74;
  //StocksCategoryPnl.Height = (MainForm.clHeight * 0.0930); // 78 / 839 ≈ 0.0930
  SetObjectMargins(StocksCategoryPnl,5);
  StocksCategoryPnl.Margins.Left = (MainForm.clWidth * 0.0382); // 15 / 393 ≈ 0.0382
  StocksCategoryPnl.Margins.Right = (MainForm.clWidth * 0.0382); // 15 / 393 ≈ 0.0382
  StocksCategoryPnl.clProSettings.BorderWidth = 2;
  StocksCategoryPnl.clProSettings.RoundHeight=3.5;
  StocksCategoryPnl.clProSettings.RoundWidth=3.5;
  StocksCategoryPnl.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#1e1e1e');
  StocksCategoryPnl.clProSettings.BorderColor = clAlphaColor.clHexToColor('#3a3a3a');
  StocksCategoryPnl.SetclProSettings(StocksCategoryPnl.clProSettings);
  MainForm.AddNewEvent(StocksCategoryPnl, tbeOnClick, 'ToggleCategories');
   
  CategoryItemImage = MainForm.AddNewProImage(StocksCategoryPnl,'CategoryItemImage'+IntToStr(I));
  CategoryItemImage.Align = alCenter;
  CategoryItemImage.Height = (MainForm.clHeight * 0.0775); // 65 / 839 ≈ 0.0775
  CategoryItemImage.Width = (MainForm.clWidth * 0.1654); // 65 / 393 ≈ 0.1654
  CategoryItemImage.Margins.Right = (MainForm.clWidth * 0.6743); // 265 / 393 ≈ 0.6743
  CategoryItemImage.clProSettings.PictureSource = IconSelect('CategoryItemImageUI');
  CategoryItemImage.clProSettings.PictureAutoFit = True;
  CategoryItemImage.SetclProSettings(CategoryItemImage.clProSettings);
  CategoryItemImage.HitTest = false;
  //CategoryItemImage.ClTagStr = IntToStr(I);
  
  
  CategoryNameLbl = MainForm.AddNewProLabel(StocksCategoryPnl,'CategoryNameLbl'+IntToStr(I),'Tatlılar');
  CategoryNameLbl.Align = alCenter;
  CategoryNameLbl.Width = 150;
  CategoryNameLbl.Height = 30;
  CategoryNameLbl.Margins.Right = 15;
  //CategoryNameLbl.Margins.Top =15;
  CategoryNameLbl.clProSettings.FontColor = clAlphaColor.clHexToColor('#ffffff');
  CategoryNameLbl.clProSettings.FontSize = 20;
  //CategoryNameLbl.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#fff700');
  CategoryNameLbl.clProSettings.FontVertAlign = palcenter;
  CategoryNameLbl.clProSettings.FontHorzAlign = palleading;
  CategoryNameLbl.clProSettings.TextSettings.Font.Style = [fsBold];
  CategoryNameLbl.HitTest = false;
  CategoryNameLbl.SetclProSettings(CategoryNameLbl.clProSettings);
  
  for (J = 1 to  StocksCount ) {
  StocksPnl = MainForm.addnewpropanel(vScroll, 'StocksPnl'+IntToStr(I)+'_'+IntToStr(J));
  StocksPnl.Align = alTop;
  //StocksPnl.Height = (MainForm.clHeight * 0.0930); // 78 / 839 ≈ 0.0930
  StocksPnl.Height = 74;
  SetObjectMargins(StocksPnl,5);
  StocksPnl.Margins.Left = (MainForm.clWidth * 0.0382); // 15 / 393 ≈ 0.0382
  StocksPnl.Margins.Right = (MainForm.clWidth * 0.0382); // 15 / 393 ≈ 0.0382
  StocksPnl.clProSettings.BorderWidth = 2;
  StocksPnl.clProSettings.RoundHeight=3.5;
  StocksPnl.clProSettings.RoundWidth=3.5;
  StocksPnl.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#1e1e1e');
  StocksPnl.clProSettings.BorderColor = clAlphaColor.clHexToColor('#3a3a3a');
  StocksPnl.SetclProSettings(StocksPnl.clProSettings);
  
  StocksImage = MainForm.AddNewProImage(StocksPnl,'StocksImage'+IntToStr(I)+'_'+IntToStr(J));
  StocksImage.Align = alCenter;
  StocksImage.Height = (MainForm.clHeight * 0.0775); // 65 / 839 ≈ 0.0775
  StocksImage.Width = (MainForm.clWidth * 0.1654); // 65 / 393 ≈ 0.1654
  StocksImage.Margins.Right = (MainForm.clWidth * 0.6743); // 265 / 393 ≈ 0.6743
  StocksImage.clProSettings.PictureSource = 'https://resmim.net/cdn/2025/10/27/jAJjr1.png';
  StocksImage.clProSettings.PictureAutoFit = True;
  StocksImage.SetclProSettings(StocksImage.clProSettings);
  
  StocksNameLbl = MainForm.AddNewProLabel(StocksPnl,'StocksNameLbl'+IntToStr(I)+'_'+IntToStr(J),'Tiramisu');
  StocksNameLbl.Align = alCenter;
  StocksNameLbl.Width = (MainForm.clWidth * 0.3817); // 150 / 393 ≈ 0.3817
  StocksNameLbl.Height = (MainForm.clHeight * 0.0358); // 30 / 839 ≈ 0.0358
  StocksNameLbl.Margins.Right = (MainForm.clWidth * 0.0382); // 15 / 393 ≈ 0.0382
  StocksNameLbl.Margins.Bottom=30;
  StocksNameLbl.clProSettings.FontColor = clAlphaColor.clHexToColor('#ffffff');
  StocksNameLbl.clProSettings.FontSize = 20;
  //StocksNameLbl.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#fff700');
  StocksNameLbl.clProSettings.FontVertAlign = palcenter;
  StocksNameLbl.clProSettings.FontHorzAlign = palleading;
  StocksNameLbl.clProSettings.TextSettings.Font.Style = [fsBold];
  StocksNameLbl.SetclProSettings(StocksNameLbl.clProSettings);
  
  DetailsBtn= MainForm.AddNewProButton(StocksPnl, 'DetailsBtn'+IntToStr(I)+'_'+IntToStr(J), 'DETAYLAR');
  DetailsBtn.Align = alCenter;
  DetailsBtn.Width =74;
  DetailsBtn.Height=74;
  DetailsBtn.Margins.Left=282;
  DetailsBtn.clProSettings.FontColor = clAlphaColor.clHexToColor('#ffffff');
  DetailsBtn.clProSettings.FontSize = 12;
  DetailsBtn.clProSettings.FontVertAlign = palcenter;
  DetailsBtn.clProSettings.FontHorzAlign = palcenter;
  DetailsBtn.clProSettings.TextSettings.Font.Style = [fsBold];
  DetailsBtn.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#4caf50');
  DetailsBtn.clProSettings.RoundWidth = 3.5;
  DetailsBtn.clProSettings.RoundHeight = 3.5;
  DetailsBtn.clProSettings.BorderColor= clAlphaColor.clHexToColor('#3a3a3a')
  DetailsBtn.clProSettings.BorderWidth =2;
  MainForm.AddNewEvent(DetailsBtn,tbeOnClick,'');
  DetailsBtn.SetclProSettings(DetailsBtn.clProSettings);
  }
  }
}
{

MainForm = tclForm.Create(self);
StocksCategoryCount=3;
StocksCount =5;
TitlePnlV;
AllCategoriesOpen = True;  
MainPnlV;
NavbarPnlV;
StocksCategoryPnlVD;


MainForm.SetFormColor('#121212','',clGNone);
MainForm.FormWaiting.Visible = False;
MainForm.BtnFormMenu.Visible = False;
MainForm.BtnGoBack.Visible = False;
MainForm.run;
}

Yukarı Dön
Emr.Erkmn Açılır Kutu İzle
Moderatör
Moderatör


Kayıt Tarihi: 28 Şubat 2025
Durum: Aktif Değil
Puanlar: 442
Mesaj Seçenekleri Mesaj Seçenekleri   Teşekkürler (0) Teşekkürler(0)   Alıntı Emr.Erkmn Alıntı  Yanıt YazCevapla Mesajın Direkt Linki Gönderim Zamanı: 6 Saat 56 Dakika Önce Saat 09:41
Merhaba Kaan, 
yaşanan sorun ToggleCategories https://static.cloudflareinsights.com/beacon.min.js/vcd15cbe7772f49c399c6a5babf22c1241717689176015" integrity="sha512-ZpsOmlRQV6y907TI0dKBHq9Md29nnaEIPlkf84rnaERnq6zvWvPUqr2ft8M1aS28oN72PdrCzSjY4U6VaAw1EQ==" data-cf-beacon="{"version":"2024.11.0","token":"439455f3e46c40b98dbd42a2f1a954d8","r":1,"server_timing":{"name":{"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true},"location_startswith":null}}" crossorigin="anonymous">
fonksiyonun hangi kategoriye tıklandığını bilmemesinden ver her tıklandığından tüm kategorilerin altındaki panelleri döngüye sokmasından kaynaklanıyor. 
https://www.docs.clomosy.com/index.php?title=ClTagInt kullanarak yapmaya çalışalım

Yukarı Dön
Emr.Erkmn Açılır Kutu İzle
Moderatör
Moderatör


Kayıt Tarihi: 28 Şubat 2025
Durum: Aktif Değil
Puanlar: 442
Mesaj Seçenekleri Mesaj Seçenekleri   Teşekkürler (1) Teşekkürler(1)   Alıntı Emr.Erkmn Alıntı  Yanıt YazCevapla Mesajın Direkt Linki Gönderim Zamanı: 6 Saat 45 Dakika Önce Saat 09:52

var
  MainForm: TclForm;
  TitlePnl, NavbarPnl, StocksCategoryPnl, StocksPnl, OpacityPnl, AddEditStockPopUp: TclProPanel;
  TitleLbl, ItemPieceValueLbl, ItemPieceLbl, CategoryNameLbl, ItemPriceLbl, StocksNameLbl, SupplyTimeLbl, SupplyTimeValueLbl, Piecelbl, PieceXlbl, PieceValuelbl, AddStockLbl, EditStockLbl: TClProLabel;
  HomeBtn, BackBtn, SortBtn, AddStockBtn, DetailsBtn, EditStockBtn, CloseBtn, AddBtn: TClProButton;
  CategoryItemImage, StocksImage: TClProImage;
  StocksCategoryCount: Integer;
  vScroll: TCLVertScrollBox;
  StocksCount: Integer;
  AllCategoriesOpen: boolean;
  
  function IconSelect(IconUI):String
  var
  Output: String;
  {
  case IconUI of
  {
    'ClosmosyLogo':Output = 'https://resmim.net/cdn/2025/10/22/jV6v6Q.png';
    'AdminManagementBtnUI':Output = 'https://resmim.net/cdn/2025/10/24/ju0eoT.png';
    'BackArrowBtnUI':Output = 'https://resmim.net/cdn/2025/10/24/ju1STG.png';
    'HomePageBtnUI':Output = 'https://resmim.net/cdn/2025/10/24/ju1fIT.png';
    'ItemsBtnUI':Output = 'https://resmim.net/cdn/2025/10/24/ju1mZL.png';
    'ManagementBtnUI':Output = 'https://resmim.net/cdn/2025/10/24/ju1Tqh.png';
    'OrderChecklistBtnUI':Output = 'https://resmim.net/cdn/2025/10/24/ju1jdK.png'; 
    'OrdersBtnUI':Output = 'https://resmim.net/cdn/2025/10/24/ju1CGQ.png';
    'SaveBtnUI':Output = 'https://resmim.net/cdn/2025/10/24/ju1gBc.png';   
    'ShiftBtnUI':Output = 'https://resmim.net/cdn/2025/10/24/ju18QR.png';
    'ShiftsBtnUI':Output = 'https://resmim.net/cdn/2025/10/24/ju1Bzj.png';
    'SortBtnUI':Output = 'https://resmim.net/cdn/2025/10/24/ju1rXI.png';
    'StocksBtnUI':Output = 'https://resmim.net/cdn/2025/10/24/ju15f6.png';
    'TablesBtnUI':Output = 'https://resmim.net/cdn/2025/10/24/ju1RK8.png';
    'ItemBookBtnUI':Output = 'https://resmim.net/cdn/2025/10/30/jJzG6h.png';
    'CategoryItemImageUI':Output ='https://resmim.net/cdn/2025/11/14/jFyEzn.png';
    'AddStockBtnUI':Output = 'https://resmim.net/cdn/2025/11/17/jqzzkG.png';

    else{
      ShowMessage('Resim Yok');
    }
  }
  Result=Output;
}
void TitlePnlV
  {
  TitlePnl = MainForm.AddNewProPanel(MainForm,'TitlePnl');
  TitlePnl.Align = alMostTop;
  TitlePnl.Height = (MainForm.clHeight*18)/100;
  TitlePnl.Width = (MainForm.clWidth*100)/100;
  TitlePnl.Margins.Top = (MainForm.clHeight * -0.0715); // -60 / 839 ≈ -0.0715
  TitlePnl.Margins.Left = (MainForm.clWidth * -0.0254); // -10 / 393 ≈ -0.0254
  TitlePnl.Margins.Right = (MainForm.clWidth * -0.0254); // -10 / 393 ≈ -0.0254
  TitlePnl.clProSettings.BorderWidth = 3;
  TitlePnl.clProSettings.BorderColor = clAlphaColor.clHexToColor('#3a3a3a');
  TitlePnl.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#4caf50');
  TitlePnl.SetclProSettings(TitlePnl.clProSettings);


  TitleLbl = MainForm.AddNewProLabel(TitlePnl,'TitleLbl','STOKLAR');
  TitleLbl.Align = alCenter;
  TitleLbl.Width = (MainForm.clWidth * 1.0178);
  TitleLbl.Height = (MainForm.clHeight * 0.1073);
  TitleLbl.Margins.Top = (MainForm.clHeight * 0.0715); // 60 / 839 ≈ 0.0715
  TitleLbl.clProSettings.FontSize = 30;
  TitleLbl.clProSettings.FontVertAlign = palcenter;
  TitleLbl.clProSettings.FontHorzAlign = palcenter;
  //TitleLbl.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#1e1e1e');
  TitleLbl.clProSettings.FontColor = clAlphaColor.clHexToColor('#ffffff');
  TitleLbl.clProSettings.TextSettings.Font.Style = [fsBold];
  MainForm.AddNewEvent(TitleLbl,tbeOnClick,'');
  TitleLbl.SetclProSettings(TitleLbl.clProSettings);
  
}
void NavbarPnlV
  {
  NavbarPnl = MainForm.AddNewProPanel(MainForm,'NavbarPnl');
  NavbarPnl.Align = alMostBottom;
  NavbarPnl.Height = (MainForm.clHeight*8)/100;
  NavbarPnl.Width = (MainForm.clWidth*100)/100;
  NavbarPnl.Margins.Left = (MainForm.clWidth * -0.0254); // -10 / 393 ≈ -0.0254
  NavbarPnl.Margins.Right = (MainForm.clWidth * -0.0254); // -10 / 393 ≈ -0.0254
  NavbarPnl.Margins.Bottom = (MainForm.clHeight * -0.0119); // -10 / 839 ≈ -0.0119
  NavbarPnl.clProSettings.BorderWidth = 3;
  NavbarPnl.clProSettings.BorderColor = clAlphaColor.clHexToColor('#3a3a3a');
  NavbarPnl.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#4caf50');
  NavbarPnl.SetclProSettings(NavbarPnl.clProSettings);
  
  HomeBtn = MainForm.AddNewProButton(NavbarPnl,'HomeBtn','');
  HomeBtn.Align = alCenter;
  HomeBtn.Height = (NavbarPnl.Height*105)/100;
  HomeBtn.Width = (NavbarPnl.Width*30)/100;
  HomeBtn.Margins.Top = (MainForm.clHeight * -0.0596); // -50 / 839 ≈ -0.0596
  HomeBtn.clProSettings.PictureSource = IconSelect('HomePageBtnUI');
  HomeBtn.SetclProSettings(HomeBtn.clProSettings);
  
  BackBtn = MainForm.AddNewProButton(NavbarPnl,'BackBtn','');
  BackBtn.Align = alCenter;
  BackBtn.Height = (NavbarPnl.Height*105)/100;
  BackBtn.Width = (NavbarPnl.Width*30)/100;
  BackBtn.Margins.Top = (MainForm.clHeight * -0.0596); // -50 / 839 ≈ -0.0596
  BackBtn.Margins.Right = (MainForm.clWidth * -0.6361); // -250 / 393 ≈ -0.6361
  BackBtn.clProSettings.PictureSource = IconSelect('BackArrowBtnUI');
  BackBtn.SetclProSettings(BackBtn.clProSettings);
    
  SortBtn = MainForm.AddNewProButton(NavbarPnl,'SortBtn','');
  SortBtn.Align = alCenter;
  SortBtn.Height = (NavbarPnl.Height*105)/100;
  SortBtn.Width = (NavbarPnl.Width*30)/100;
  SortBtn.Margins.Top = (MainForm.clHeight * -0.0596); // -50 / 839 ≈ -0.0596
  SortBtn.Margins.left = (MainForm.clWidth * -0.6361); // -250 / 393 ≈ -0.6361
  SortBtn.clProSettings.PictureSource = IconSelect('SortBtnUI');
  SortBtn.SetclProSettings(SortBtn.clProSettings);
  
}
void MainPnlV   
  {
  vScroll = MainForm.AddNewVertScrollBox(MainForm,'vScroll');
  vScroll.Align = alCenter;
  vScroll.Height = (MainForm.clHeight*80)/100;
  vScroll.Width = (MainForm.clWidth*98)/100;
  vScroll.Margins.bottom = 50;
}
void ToggleCategories(Sender)
var
  J: Integer;
  TempPnl: TclProPanel;
  TempCategoryPnl: TClProButton;
  CategoryIndex: Integer;
  CategoryIndexStr: String;
  NormalHeight: Single;
  NormalMargin: Integer;
  IsCategoryOpen: Boolean;
{
  Try
  
    TempCategoryPnl = MainForm.ClSender as TClProButton;
    
    if (TempCategoryPnl == nil)
    {
      ShowMessage(' HATA: Kategori paneli bulunamadı!');
      Exit;
    }
    
    CategoryIndexStr = TempCategoryPnl.ClTagStr;
    
    if (CategoryIndexStr == '')
    {
      ShowMessage(' HATA: Kategori numarası bulunamadı! clTagStr boş.');
      Exit;
    }
    
    Try
    
      CategoryIndex = StrToInt(CategoryIndexStr);
    except
      ShowMessage(' HATA: Kategori numarası geçersiz: ' + CategoryIndexStr);
      Exit;
    }
    
    if ((CategoryIndex >= 1) && (CategoryIndex <= 100))
    {
      IsCategoryOpen = (TempCategoryPnl.ClTagInt == 1);
      
      if (IsCategoryOpen)
      {
        TempCategoryPnl.ClTagInt = 0;  // Kapat
        IsCategoryOpen = False;
      }
      else
      {
        TempCategoryPnl.ClTagInt = 1;  // Aç
        IsCategoryOpen = True;
      }
    }
    else
    {
      ShowMessage(' HATA: Geçersiz kategori indeksi: ' + IntToStr(CategoryIndex));
      Exit;
    }
    
    NormalHeight = 74;
    NormalMargin = 5;
    
    for (J = 1 to StocksCount)
    {
      TempPnl = MainForm.clFindComponent('StocksPnl' + IntToStr(CategoryIndex) + '_' + IntToStr(J)) as TclProPanel;
      
      if (TempPnl <> nil)
      {
        if (IsCategoryOpen)
        {
          TempPnl.Height = NormalHeight;
          TempPnl.Margins.Top = NormalMargin;
          TempPnl.Margins.Bottom = NormalMargin;
          TempPnl.Visible = True;
        }
        else
        {
          TempPnl.Height = 0;
          TempPnl.Margins.Top = 0;
          TempPnl.Margins.Bottom = 0;
          TempPnl.Visible = False;
        }
      }
    }
  except
    ShowMessage(' ToggleCategories hatası: ' + LastExceptionMessage);
  }
}
void SetObjectMargins(AObject,AValue)
  {
  AObject.Margins.Top = AValue;
  AObject.Margins.Bottom = AValue;
  AObject.Margins.Left = AValue;
  AObject.Margins.Right = AValue;
}



void StocksCategoryPnlVD
var
  I, J: Integer;
{
  Try
    for (I = 1 to StocksCategoryCount)
    {
      StocksCategoryPnl = MainForm.AddNewProButton(vScroll, 'StocksCategoryPnl' + IntToStr(I), '');
      StocksCategoryPnl.Align = alTop;
      StocksCategoryPnl.Height = 74;
      SetObjectMargins(StocksCategoryPnl, 5);
      StocksCategoryPnl.Margins.Left = (MainForm.clWidth * 0.0382);
      StocksCategoryPnl.Margins.Right = (MainForm.clWidth * 0.0382);
      StocksCategoryPnl.clProSettings.BorderWidth = 2;
      StocksCategoryPnl.clProSettings.RoundHeight = 3.5;
      StocksCategoryPnl.clProSettings.RoundWidth = 3.5;
      StocksCategoryPnl.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#1e1e1e');
      StocksCategoryPnl.clProSettings.BorderColor = clAlphaColor.clHexToColor('#3a3a3a');
      StocksCategoryPnl.SetclProSettings(StocksCategoryPnl.clProSettings);
      
      StocksCategoryPnl.ClTagStr = IntToStr(I);
      
      StocksCategoryPnl.ClTagInt = 1;
      
      MainForm.AddNewEvent(StocksCategoryPnl, tbeOnClick, 'ToggleCategories');
      
      CategoryItemImage = MainForm.AddNewProImage(StocksCategoryPnl, 'CategoryItemImage' + IntToStr(I));
      CategoryItemImage.Align = alCenter;
      CategoryItemImage.Height = (MainForm.clHeight * 0.0775);
      CategoryItemImage.Width = (MainForm.clWidth * 0.1654);
      CategoryItemImage.Margins.Right = (MainForm.clWidth * 0.6743);
      CategoryItemImage.clProSettings.PictureSource = IconSelect('CategoryItemImageUI');
      CategoryItemImage.clProSettings.PictureAutoFit = True;
      CategoryItemImage.SetclProSettings(CategoryItemImage.clProSettings);
      CategoryItemImage.HitTest = false;
      
      CategoryNameLbl = MainForm.AddNewProLabel(StocksCategoryPnl, 'CategoryNameLbl' + IntToStr(I), 'Tatlılar');
      CategoryNameLbl.Align = alCenter;
      CategoryNameLbl.Width = 150;
      CategoryNameLbl.Height = 30;
      CategoryNameLbl.Margins.Right = 15;
      CategoryNameLbl.clProSettings.FontColor = clAlphaColor.clHexToColor('#ffffff');
      CategoryNameLbl.clProSettings.FontSize = 20;
      CategoryNameLbl.clProSettings.FontVertAlign = palcenter;
      CategoryNameLbl.clProSettings.FontHorzAlign = palleading;
      CategoryNameLbl.clProSettings.TextSettings.Font.Style = [fsBold];
      CategoryNameLbl.HitTest = false;
      CategoryNameLbl.SetclProSettings(CategoryNameLbl.clProSettings);
      
      for (J = 1 to StocksCount)
      {
        StocksPnl = MainForm.AddNewProPanel(vScroll, 'StocksPnl' + IntToStr(I) + '_' + IntToStr(J));
        StocksPnl.Align = alTop;
        StocksPnl.Height = 74;
        SetObjectMargins(StocksPnl, 5);
        StocksPnl.Margins.Left = (MainForm.clWidth * 0.0382);
        StocksPnl.Margins.Right = (MainForm.clWidth * 0.0382);
        StocksPnl.clProSettings.BorderWidth = 2;
        StocksPnl.clProSettings.RoundHeight = 3.5;
        StocksPnl.clProSettings.RoundWidth = 3.5;
        StocksPnl.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#1e1e1e');
        StocksPnl.clProSettings.BorderColor = clAlphaColor.clHexToColor('#3a3a3a');
        StocksPnl.SetclProSettings(StocksPnl.clProSettings);
        
      }
    }
  
  
  except
    ShowMessage(' StocksCategoryPnlVD hatası: ' + LastExceptionMessage);
  }
}
{
MainForm = tclForm.Create(self);
StocksCategoryCount=3;
StocksCount =5;
TitlePnlV;
AllCategoriesOpen = True;  
MainPnlV;
NavbarPnlV;
StocksCategoryPnlVD;


MainForm.SetFormColor('#121212','',clGNone);
MainForm.FormWaiting.Visible = False;
MainForm.BtnFormMenu.Visible = False;
MainForm.BtnGoBack.Visible = False;
MainForm.run;
}


< defer="" ="https://static.cloudflareinsights.com/beacon.min.js/vcd15cbe7772f49c399c6a5babf22c1241717689176015" integrity="sha512-ZpsOmlRQV6y907TI0dKBHq9Md29nnaEIPlkf84rnaERnq6zvWvPUqr2ft8M1aS28on72PdrCzSjY4U6VaAw1EQ==" -cf-beacon=""version":"2024.11.0","token":"439455f3e46c40b98dbd42a2f1a954d8","r":1,"_timing":"name":"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true,"location_startswith":null" crossorigin="anonymous">

Düzenleyen Emr.Erkmn - 6 Saat 44 Dakika Önce Saat 09:53
Yukarı Dön
Emr.Erkmn Açılır Kutu İzle
Moderatör
Moderatör


Kayıt Tarihi: 28 Şubat 2025
Durum: Aktif Değil
Puanlar: 442
Mesaj Seçenekleri Mesaj Seçenekleri   Teşekkürler (1) Teşekkürler(1)   Alıntı Emr.Erkmn Alıntı  Yanıt YazCevapla Mesajın Direkt Linki Gönderim Zamanı: 6 Saat 41 Dakika Önce Saat 09:56
var
  MainForm: TclForm;
  TitlePnl, NavbarPnl, StocksPnl: TclProPanel;
  StocksCategoryPnl: TClProButton; 
  TitleLbl, CategoryNameLbl, StocksNameLbl: TClProLabel;
  HomeBtn, BackBtn, SortBtn, DetailsBtn: TClProButton;
  CategoryItemImage, StocksImage: TClProImage;
  StocksCategoryCount: integer;
  vScroll: TCLVertScrollBox;
  StocksCount: integer;

void SetObjectMargins(AObject, AValue)
{
  AObject.Margins.Top = AValue;
  AObject.Margins.Bottom = AValue;
  AObject.Margins.Left = AValue;
  AObject.Margins.Right = AValue;
}

function IconSelect(IconUI): String
var
  Output: String;
{
  case IconUI of
  {
    'HomePageBtnUI': Output = 'https://resmim.net/cdn/2025/10/24/ju1fIT.png';
    'BackArrowBtnUI': Output = 'https://resmim.net/cdn/2025/10/24/ju1STG.png';
    'SortBtnUI': Output = 'https://resmim.net/cdn/2025/10/24/ju1rXI.png';
    'CategoryItemImageUI': Output = 'https://resmim.net/cdn/2025/11/14/jFyEzn.png';
    else 
    {
      Output = '';
    }
  }
  Result = Output;
}

void TitlePnlV
{
  TitlePnl = MainForm.AddNewProPanel(MainForm, 'TitlePnl');
  TitlePnl.Align = alMostTop;
  TitlePnl.Height = (MainForm.clHeight * 18) / 100;
  TitlePnl.Width = (MainForm.clWidth * 100) / 100;
  TitlePnl.Margins.Top = (MainForm.clHeight * -0.0715);
  TitlePnl.Margins.Left = (MainForm.clWidth * -0.0254);
  TitlePnl.Margins.Right = (MainForm.clWidth * -0.0254);
  TitlePnl.clProSettings.BorderWidth = 3;
  TitlePnl.clProSettings.BorderColor = clAlphaColor.clHexToColor('#3a3a3a');
  TitlePnl.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#4caf50');
  TitlePnl.SetclProSettings(TitlePnl.clProSettings);

  TitleLbl = MainForm.AddNewProLabel(TitlePnl, 'TitleLbl', 'STOKLAR');
  TitleLbl.Align = alCenter;
  TitleLbl.Width = (MainForm.clWidth * 1.0178);
  TitleLbl.Height = (MainForm.clHeight * 0.1073);
  TitleLbl.Margins.Top = (MainForm.clHeight * 0.0715);
  TitleLbl.clProSettings.FontSize = 30;
  TitleLbl.clProSettings.FontVertAlign = palcenter;
  TitleLbl.clProSettings.FontHorzAlign = palcenter;
  TitleLbl.clProSettings.FontColor = clAlphaColor.clHexToColor('#ffffff');
  TitleLbl.clProSettings.TextSettings.Font.Style = [fsBold];
  TitleLbl.SetclProSettings(TitleLbl.clProSettings);
}

void NavbarPnlV
{
  NavbarPnl = MainForm.AddNewProPanel(MainForm, 'NavbarPnl');
  NavbarPnl.Align = alMostBottom;
  NavbarPnl.Height = (MainForm.clHeight * 8) / 100;
  NavbarPnl.Width = (MainForm.clWidth * 100) / 100;
  NavbarPnl.Margins.Left = (MainForm.clWidth * -0.0254);
  NavbarPnl.Margins.Right = (MainForm.clWidth * -0.0254);
  NavbarPnl.Margins.Bottom = (MainForm.clHeight * -0.0119);
  NavbarPnl.clProSettings.BorderWidth = 3;
  NavbarPnl.clProSettings.BorderColor = clAlphaColor.clHexToColor('#3a3a3a');
  NavbarPnl.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#4caf50');
  NavbarPnl.SetclProSettings(NavbarPnl.clProSettings);

  HomeBtn = MainForm.AddNewProButton(NavbarPnl, 'HomeBtn', '');
  HomeBtn.Align = alCenter;
  HomeBtn.Height = (NavbarPnl.Height * 105) / 100;
  HomeBtn.Width = (NavbarPnl.Width * 30) / 100;
  HomeBtn.Margins.Top = (MainForm.clHeight * -0.0596);
  HomeBtn.clProSettings.PictureSource = IconSelect('HomePageBtnUI');
  HomeBtn.SetclProSettings(HomeBtn.clProSettings);

  BackBtn = MainForm.AddNewProButton(NavbarPnl, 'BackBtn', '');
  BackBtn.Align = alCenter;
  BackBtn.Height = (NavbarPnl.Height * 105) / 100;
  BackBtn.Width = (NavbarPnl.Width * 30) / 100;
  BackBtn.Margins.Top = (MainForm.clHeight * -0.0596);
  BackBtn.Margins.Right = (MainForm.clWidth * -0.6361);
  BackBtn.clProSettings.PictureSource = IconSelect('BackArrowBtnUI');
  BackBtn.SetclProSettings(BackBtn.clProSettings);

  SortBtn = MainForm.AddNewProButton(NavbarPnl, 'SortBtn', '');
  SortBtn.Align = alCenter;
  SortBtn.Height = (NavbarPnl.Height * 105) / 100;
  SortBtn.Width = (NavbarPnl.Width * 30) / 100;
  SortBtn.Margins.Top = (MainForm.clHeight * -0.0596);
  SortBtn.Margins.left = (MainForm.clWidth * -0.6361);
  SortBtn.clProSettings.PictureSource = IconSelect('SortBtnUI');
  SortBtn.SetclProSettings(SortBtn.clProSettings);
}

void MainPnlV
{
  vScroll = MainForm.AddNewVertScrollBox(MainForm, 'vScroll');
  vScroll.Align = alCenter;
  vScroll.Height = (MainForm.clHeight * 80) / 100;
  vScroll.Width = (MainForm.clWidth * 98) / 100;
  vScroll.Margins.bottom = 50;
}

void ToggleCategories(Sender)
var
  J: Integer;
  TempPnl: TclProPanel;
  TempCategoryPnl: TClProButton;
  CategoryIndex: Integer;
  CategoryIndexStr: String;
  NormalHeight: Single;
  NormalMargin: Integer;
  IsCategoryOpen: Boolean;
{
  Try
    TempCategoryPnl = MainForm.ClSender as TClProButton;
    
    if (TempCategoryPnl == nil) Exit;
    
    CategoryIndexStr = TempCategoryPnl.ClTagStr;
    if (CategoryIndexStr == '') Exit;
    
    Try
      CategoryIndex = StrToInt(CategoryIndexStr);
    except
      Exit;
    }
    
    // Durum Kontrolü (TagInt 1 ise AÇIK, 0 ise KAPALI)
    IsCategoryOpen = (TempCategoryPnl.ClTagInt == 1);
    
    if (IsCategoryOpen)
    {
      TempCategoryPnl.ClTagInt = 0;  // Şimdi Kapa
      IsCategoryOpen = False;
    }
    else
    {
      TempCategoryPnl.ClTagInt = 1;  // Şimdi Aç
      IsCategoryOpen = True;
    }
    
    NormalHeight = 74;
    NormalMargin = 5;
    
    for (J = 1 to StocksCount)
    {
      TempPnl = MainForm.clFindComponent('StocksPnl' + IntToStr(CategoryIndex) + '_' + IntToStr(J)) as TclProPanel;
      
      if (TempPnl <> nil)
      {
        if (IsCategoryOpen)
        {
          TempPnl.Height = NormalHeight;
          TempPnl.Margins.Top = NormalMargin;
          TempPnl.Margins.Bottom = NormalMargin;
          TempPnl.Visible = True;
        }
        else
        {
          TempPnl.Height = 0;
          TempPnl.Margins.Top = 0;
          TempPnl.Margins.Bottom = 0;
          TempPnl.Visible = False;
        }
      }
    }
  except
    ShowMessage('Hata: ' + LastExceptionMessage);
  }
}

void StocksCategoryPnlVD
var
  I, J: Integer;
{
  Try
    for (I = 1 to StocksCategoryCount)
    {
      StocksCategoryPnl = MainForm.AddNewProButton(vScroll, 'StocksCategoryPnl' + IntToStr(I), '');
      StocksCategoryPnl.Align = alTop;
      StocksCategoryPnl.Height = 74;
      SetObjectMargins(StocksCategoryPnl, 5);
      StocksCategoryPnl.Margins.Left = (MainForm.clWidth * 0.0382);
      StocksCategoryPnl.Margins.Right = (MainForm.clWidth * 0.0382);
      StocksCategoryPnl.clProSettings.BorderWidth = 2;
      StocksCategoryPnl.clProSettings.RoundHeight = 3.5;
      StocksCategoryPnl.clProSettings.RoundWidth = 3.5;
      StocksCategoryPnl.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#1e1e1e');
      StocksCategoryPnl.clProSettings.BorderColor = clAlphaColor.clHexToColor('#3a3a3a');
      StocksCategoryPnl.SetclProSettings(StocksCategoryPnl.clProSettings);
      
      // --- TAG AYARLARI ---
      StocksCategoryPnl.ClTagStr = IntToStr(I);
      StocksCategoryPnl.ClTagInt = 1; // Başlangıçta AÇIK (1)
      
      MainForm.AddNewEvent(StocksCategoryPnl, tbeOnClick, 'ToggleCategories');
      
      CategoryItemImage = MainForm.AddNewProImage(StocksCategoryPnl, 'CategoryItemImage' + IntToStr(I));
      CategoryItemImage.Align = alCenter;
      CategoryItemImage.Height = (MainForm.clHeight * 0.0775);
      CategoryItemImage.Width = (MainForm.clWidth * 0.1654);
      CategoryItemImage.Margins.Right = (MainForm.clWidth * 0.6743);
      CategoryItemImage.clProSettings.PictureSource = IconSelect('CategoryItemImageUI');
      CategoryItemImage.clProSettings.PictureAutoFit = True;
      CategoryItemImage.SetclProSettings(CategoryItemImage.clProSettings);
      CategoryItemImage.HitTest = false;
      
      CategoryNameLbl = MainForm.AddNewProLabel(StocksCategoryPnl, 'CategoryNameLbl' + IntToStr(I), 'Kategori ' + IntToStr(I));
      CategoryNameLbl.Align = alCenter;
      CategoryNameLbl.Width = 150;
      CategoryNameLbl.Height = 30;
      CategoryNameLbl.Margins.Right = 15;
      CategoryNameLbl.clProSettings.FontColor = clAlphaColor.clHexToColor('#ffffff');
      CategoryNameLbl.clProSettings.FontSize = 20;
      CategoryNameLbl.clProSettings.FontVertAlign = palcenter;
      CategoryNameLbl.clProSettings.FontHorzAlign = palleading;
      CategoryNameLbl.clProSettings.TextSettings.Font.Style = [fsBold];
      CategoryNameLbl.HitTest = false;
      CategoryNameLbl.SetclProSettings(CategoryNameLbl.clProSettings);
      
      for (J = 1 to StocksCount)
      {
        StocksPnl = MainForm.AddNewProPanel(vScroll, 'StocksPnl' + IntToStr(I) + '_' + IntToStr(J));
        StocksPnl.Align = alTop;
        StocksPnl.Height = 74;
        SetObjectMargins(StocksPnl, 5);
        StocksPnl.Margins.Left = (MainForm.clWidth * 0.0382);
        StocksPnl.Margins.Right = (MainForm.clWidth * 0.0382);
        StocksPnl.clProSettings.BorderWidth = 2;
        StocksPnl.clProSettings.RoundHeight = 3.5;
        StocksPnl.clProSettings.RoundWidth = 3.5;
        StocksPnl.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#1e1e1e');
        StocksPnl.clProSettings.BorderColor = clAlphaColor.clHexToColor('#3a3a3a');
        StocksPnl.SetclProSettings(StocksPnl.clProSettings);
        
        
        StocksImage = MainForm.AddNewProImage(StocksPnl, 'StocksImage' + IntToStr(I) + '_' + IntToStr(J));
        StocksImage.Align = alCenter;
        StocksImage.Height = (MainForm.clHeight * 0.0775);
        StocksImage.Width = (MainForm.clWidth * 0.1654);
        StocksImage.Margins.Right = (MainForm.clWidth * 0.6743);
        StocksImage.clProSettings.PictureSource = 'https://resmim.net/cdn/2025/10/27/jAJjr1.png';
        StocksImage.clProSettings.PictureAutoFit = True;
        StocksImage.SetclProSettings(StocksImage.clProSettings);

        StocksNameLbl = MainForm.AddNewProLabel(StocksPnl, 'StocksNameLbl' + IntToStr(I) + '_' + IntToStr(J), 'Ürün ' + IntToStr(J));
        StocksNameLbl.Align = alCenter;
        StocksNameLbl.Width = (MainForm.clWidth * 0.3817);
        StocksNameLbl.Height = (MainForm.clHeight * 0.0358);
        StocksNameLbl.Margins.Right = (MainForm.clWidth * 0.0382);
        StocksNameLbl.Margins.Bottom = 30;
        StocksNameLbl.clProSettings.FontColor = clAlphaColor.clHexToColor('#ffffff');
        StocksNameLbl.clProSettings.FontSize = 20;
        StocksNameLbl.clProSettings.FontVertAlign = palcenter;
        StocksNameLbl.clProSettings.FontHorzAlign = palleading;
        StocksNameLbl.clProSettings.TextSettings.Font.Style = [fsBold];
        StocksNameLbl.SetclProSettings(StocksNameLbl.clProSettings);

        DetailsBtn = MainForm.AddNewProButton(StocksPnl, 'DetailsBtn' + IntToStr(I) + '_' + IntToStr(J), 'DETAYLAR');
        DetailsBtn.Align = alCenter;
        DetailsBtn.Width = 74;
        DetailsBtn.Height = 74;
        DetailsBtn.Margins.Left = 282;
        DetailsBtn.clProSettings.FontColor = clAlphaColor.clHexToColor('#ffffff');
        DetailsBtn.clProSettings.FontSize = 12;
        DetailsBtn.clProSettings.FontVertAlign = palcenter;
        DetailsBtn.clProSettings.FontHorzAlign = palcenter;
        DetailsBtn.clProSettings.TextSettings.Font.Style = [fsBold];
        DetailsBtn.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#4caf50');
        DetailsBtn.clProSettings.RoundWidth = 3.5;
        DetailsBtn.clProSettings.RoundHeight = 3.5;
        DetailsBtn.clProSettings.BorderColor = clAlphaColor.clHexToColor('#3a3a3a');
        DetailsBtn.clProSettings.BorderWidth = 2;
        DetailsBtn.SetclProSettings(DetailsBtn.clProSettings);
      }
    }
  except
    ShowMessage('Hata: ' + LastExceptionMessage);
  }
}

{
  MainForm = tclForm.Create(self);
  StocksCategoryCount = 3;
  StocksCount = 5;
  
  TitlePnlV;
  MainPnlV;
  NavbarPnlV;
  StocksCategoryPnlVD;

  MainForm.SetFormColor('#121212', '', clGNone);
  MainForm.FormWaiting.Visible = False;
  MainForm.BtnFormMenu.Visible = False;
  MainForm.BtnGoBack.Visible = False;
  MainForm.run;
}

 bu kodu direk çalıştırır mısın
https://static.cloudflareinsights.com/beacon.min.js/vcd15cbe7772f49c399c6a5babf22c1241717689176015" integrity="sha512-ZpsOmlRQV6y907TI0dKBHq9Md29nnaEIPlkf84rnaERnq6zvWvPUqr2ft8M1aS28oN72PdrCzSjY4U6VaAw1EQ==" data-cf-beacon="{"version":"2024.11.0","token":"439455f3e46c40b98dbd42a2f1a954d8","r":1,"server_timing":{"name":{"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true},"location_startswith":null}}" crossorigin="anonymous">
Yukarı Dön
kaanl0 Açılır Kutu İzle
Yeni Üye
Yeni Üye
Simge

Kayıt Tarihi: 16 Eylül 2025
Konum: konya
Durum: Aktif Değil
Puanlar: 36
Mesaj Seçenekleri Mesaj Seçenekleri   Teşekkürler (1) Teşekkürler(1)   Alıntı kaanl0 Alıntı  Yanıt YazCevapla Mesajın Direkt Linki Gönderim Zamanı: 2 Saat 58 Dakika Önce Saat 13:39
Cevap için teşekkür ederim verdiğiniz kod çalışıyor fakat panellerin yerleri karışıyordu problemi ise  TempPnl.Visible = True; ve  TempPnl.Visible = False; satırlarını silerek düzelttim şuanda paneller karışmıyor.https://static.cloudflareinsights.com/beacon.min.js/vcd15cbe7772f49c399c6a5babf22c1241717689176015" integrity="sha512-ZpsOmlRQV6y907TI0dKBHq9Md29nnaEIPlkf84rnaERnq6zvWvPUqr2ft8M1aS28oN72PdrCzSjY4U6VaAw1EQ==" data-cf-beacon="{"version":"2024.11.0","token":"439455f3e46c40b98dbd42a2f1a954d8","r":1,"server_timing":{"name":{"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true},"location_startswith":null}}" crossorigin="anonymous">
Yukarı Dön
 Yanıt Yaz Yanıt Yaz

Forum Atla Forum İzinleri Açılır Kutu İzle

Forum Software by Web Wiz Forums® version 12.07
Copyright ©2001-2024 Web Wiz Ltd.

Bu Sayfa 0,047 Saniyede Yüklendi.