Sayfayı Yazdır | Pencereyi Kapat

Uses kullanımı

Nereden Yazdırıldığı: Clomosy | Forum
Kategori: Genel Programlama
Forum Adı: Genel İşlemler
Forum Tanımlaması: TRObject dili ile programlama yaparken karşılaşılan genel işlemler
URL: https://forum.clomosy.com.tr/forum_posts.asp?TID=1219
Tarih: 10 Kasım 2025 Saat 14:17
Program Versiyonu: Web Wiz Forums 12.07 - https://www.webwizforums.com


Konu: Uses kullanımı
Mesajı Yazan: Gökçe ulusoy
Konu: Uses kullanımı
Mesaj Tarihi: 10 Kasım 2025 Saat 09:16
var 
  Form:TCLForm;

  
  
Function  cPaneller(Form,PnlIsim,TopDeger,BottomDeger,  RightDeger,LeftDeger,WidthDeger,HeightDeger,BorderColorDeger,BackGroundDeger):TClProPanel;
var 
  Pnl_AnaKod:TclProPanel;
  {
    Pnl_AnaKod=Form.AddNewProPanel(Form, PnlIsim);
    Pnl_AnaKod.Margins.Top=TopDeger;
    Pnl_AnaKod.Margins.Bottom=BottomDeger;
    Pnl_AnaKod.Margins.Right=RightDeger;
    Pnl_AnaKod.Margins.Left=LeftDeger;
    Pnl_AnaKod.Width=WidthDeger;
    Pnl_AnaKod.Height=HeightDeger;
    Pnl_AnaKod.clProSettings.BorderColor=clAlphaColor.clHextoColor(BorderColorDeger);
    Pnl_AnaKod.clProSettings.BackGroundColor=clAlphaColor.clHextoColor(BackGroundDeger);
    Pnl_AnaKod.SetclProSettings(Pnl_AnaKod.clProSettings);
    Result=Pnl_AnaKod;
  }  
  
  AddNewProPanel kısmında hata alıyorum.
https://static.cloudflareinsights.com/beacon.min.js/vcd15cbe7772f49c399c6a5babf22c1241717689176015" rel="nofollow - 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">



Cevaplar:
Mesajı Yazan: Emr.Erkmn
Mesaj Tarihi: 10 Kasım 2025 Saat 09:23
Merhaba Gökçe, 
Kullanımı bu şekil de,

//////////////////////
uses uAddComponent;

var
  Form1 : TclForm;
  Pnl_AnaKod : TclProPanel;
  
{
  Form1 = TCLForm.Create(Self);
  
  Pnl_AnaKod = uAddComponent.cPaneller(Form1,'Pnl_AnaKod');
  Form1.Run;
}

//////////////////////


  
Function  cPaneller(Form,APnl_AnaKod):TClProPanel;
var 
  Pnl_AnaKod:TclProPanel;
  {
    Pnl_AnaKod=Form.AddNewProPanel(Form, APnl_AnaKod);
    Pnl_AnaKod.Margins.Top=10;
    Pnl_AnaKod.Margins.Bottom=10;
    Pnl_AnaKod.Margins.Right=10;
    Pnl_AnaKod.Margins.Left=10;
    Pnl_AnaKod.Width=120;
    Pnl_AnaKod.Height=80;
    Pnl_AnaKod.clProSettings.BorderColor=clAlphaColor.clHextoColor('#732121');
    Pnl_AnaKod.clProSettings.BackGroundColor=clAlphaColor.clHextoColor('#f7f7f7');
    Pnl_AnaKod.SetclProSettings(Pnl_AnaKod.clProSettings);
    Result=Pnl_AnaKod;
  }  
https://static.cloudflareinsights.com/beacon.min.js/vcd15cbe7772f49c399c6a5babf22c1241717689176015" rel="nofollow - 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">


Mesajı Yazan: Emr.Erkmn
Mesaj Tarihi: 10 Kasım 2025 Saat 09:38
Senin yapmak istediğin gibi de aşağı da bırakıyorum, 
uses uAddComponent;

var
  Form1 : TclForm;
  pnl_ad : TclProPanel;
  
{
  Form1 = TCLForm.Create(Self);
  
  pnl_ad = uAddComponent.cPaneller(Form1,'pnl_ad',10,10,10,10,120,80,'#9e0000','#4b3535');
  Form1.Run;
}

////////////

Function  cPaneller(Form,Pnl_Isim,TopDeger,BottomDeger,  RightDeger,LeftDeger,WidthDeger,HeightDeger,BorderColorDeger,BackGroundDeger):TClProPanel;
var 
  Pnl_AnaKod:TclProPanel;
  {
    Pnl_AnaKod=Form.AddNewProPanel(Form, Pnl_Isim);
    Pnl_AnaKod.Margins.Top=TopDeger;
    Pnl_AnaKod.Margins.Bottom=BottomDeger;
    Pnl_AnaKod.Margins.Right=RightDeger;
    Pnl_AnaKod.Margins.Left=LeftDeger;
    Pnl_AnaKod.Width=WidthDeger;
    Pnl_AnaKod.Height=HeightDeger;
    Pnl_AnaKod.clProSettings.BorderColor=clAlphaColor.clHextoColor(BorderColorDeger);
    Pnl_AnaKod.clProSettings.BackGroundColor=clAlphaColor.clHextoColor(BackGroundDeger);
    Pnl_AnaKod.SetclProSettings(Pnl_AnaKod.clProSettings);
    Result=Pnl_AnaKod;
  }


Mesajı Yazan: Gökçe ulusoy
Mesaj Tarihi: 10 Kasım 2025 Saat 10:12
mainpage sayfam da çağırdığım kısımlar:
Toppanel=Constant.cPaneller(Form2,'Toppanel',0,0,0,0,150,150,'#bdbdbd','#bdbdbd');
  Toppanel.Align=alMostTop;
  Toppanelright=Constant.cPaneller(Toppanel,'Toppanelright',0,0,0,0,75,300,'#150274','#150274')
  Toppanelright.Align=alRight;
  anapanel=Constant.cPaneller(Form2,'anapanel',0,0,0,0,707,800,'#bdbdbd','#bdbdbd');
  anapanel.Align = alMostBottom;
  Rightpanel=Constant.cPaneller(Toppanel,'Rightpanel',0,0,0,0,300,75,'#150274','#150274');
  Rightpanel.Align=alMostRight;
  Cuspnl=Constant.cPaneller(Rightpanel,'Cuspnl',40,0,10,10,50,150,'#bdbdbd','#bdbdbd');
  Cuspnl.Align=alMostTop;
  Ordpnl=Constant.cPaneller(Rightpanel,'Ordpnl',15,0,10,10,50,150,'#bdbdbd','#bdbdbd');
  Ordpnl.Align=alTop;
  Earpnl=Constant.cPaneller(Rightpanel,'Earpnl',15,0,10,10,50,150,'#bdbdbd','#bdbdbd');
  Earpnl.Align=alTop;
  Growthpnl=Constant.cPaneller(Rightpanel,'Growthpnl',15,0,10,10,50,150,'#bdbdbd','#bdbdbd');
  Growthpnl.Align=alTop
  ChartPanel=Constant.cPaneller(anapanel,'ChartPanel',0,0,15,15,300,350,'#150274','#150274');
  ChartPanel.Align = alBottom;
  notpanel=Constant.cPaneller(anapanel,'notpanel',0,15,0,15,300,200,'#fafafa','#fafafa');
  notpanel.Align = alLeft;
GridPanel=Constant.cPaneller(anapanel,'GridPanel',30,15,15,15,400,200,'#bdbdbd','#bdbdbd');
  GridPanel.Align=alClient;

Constant sayfamdaki kod satırları:
Function cAnaButonlar(Form,BtnIsim,BtnIcerik,Aligndeger,TopDeger,BottomDeger,  RightDeger,LeftDeger,WidthDeger,HeightDeger,BorderColorDeger,FontColorDeger,FontSizeDeger,FontNameDeger,FontVertAlignDeger,RoundHeightDeger,RoundWidthDeger): TClProButton;
var 
  Btn_AnaKod:TClProButton;
  {
    Btn_AnaKod=Form.AddNewProButton(Form, BtnIsim, BtnIcerik);
    Btn_AnaKod.Align=Aligndeger;
    Btn_AnaKod.Margins.Top=TopDeger;
    Btn_AnaKod.Margins.Bottom=BottomDeger;
    Btn_AnaKod.Margins.Right=RightDeger;
    Btn_AnaKod.Margins.Left=LeftDeger;
    Btn_AnaKod.Width=WidthDeger;
    Btn_AnaKod.Height=HeightDeger;
    Btn_AnaKod.clProSettings.BorderColor=clAlphaColor.clHextoColor(BorderColorDeger);
    Btn_AnaKod.clProSettings.FontColor=clAlphaColor.clHextoColor(FontColorDeger);
    Btn_AnaKod.clProSettings.FontSize=FontSizeDeger;
    Btn_AnaKod.clProSettings.FontName = FontNameDeger;
    Btn_AnaKod.clProSettings.FontVertAlign = FontVertAlignDeger;
    Btn_AnaKod.clProSettings.RoundHeight=RoundHeightDeger;
    Btn_AnaKod.clProSettings.RoundWidth=RoundWidthDeger;
    Btn_AnaKod.SetclProSettings(Btn_AnaKod.clProSettings);
  
    Result=Btn_AnaKod;
  }
 
  
Function cLabellar(Form,LblIsim,LblIcerik,TopDeger,BottomDeger,  RightDeger,LeftDeger,WidthDeger,HeightDeger,FontColorDeger,FontSizeDeger,FontStyledeger):TClProLabel;
var 
  Lbl_AnaKod:TClProLabel;
  {
    Lbl_AnaKod=Form.AddNewProLabel(Form, LblIsim, LblIcerik);
    Lbl_AnaKod.Margins.Top=TopDeger;
    Lbl_AnaKod.Margins.Bottom=BottomDeger;
    Lbl_AnaKod.Margins.Right=RightDeger;
    Lbl_AnaKod.Margins.Left=LeftDeger;
    Lbl_AnaKod.Width=WidthDeger;
    Lbl_AnaKod.Height=HeightDeger;
    Lbl_AnaKod.clProSettings.FontColor=clAlphaColor.clHextoColor(FontColorDeger);
    Lbl_AnaKod.clProSettings.FontSize=FontSizeDeger;
    Lbl_AnaKod.clProSettings.TextSettings.Font.Style=FontStyledeger;
    Lbl_AnaKod.SetclProSettings(Lbl_AnaKod.clProSettings);
  
    Result=Lbl_AnaKod;
  }
  
  
  
Function  cPaneller(Form,PnlIsim,TopDeger,BottomDeger,  RightDeger,LeftDeger,WidthDeger,HeightDeger,BorderColorDeger,BackGroundDeger):TClProPanel;
var 
  Pnl_AnaKod:TclProPanel;
  {
    Pnl_AnaKod=Form.AddNewProPanel(Form, PnlIsim);
    Pnl_AnaKod.Margins.Top=TopDeger;
    Pnl_AnaKod.Margins.Bottom=BottomDeger;
    Pnl_AnaKod.Margins.Right=RightDeger;
    Pnl_AnaKod.Margins.Left=LeftDeger;
    Pnl_AnaKod.Width=WidthDeger;
    Pnl_AnaKod.Height=HeightDeger;
    Pnl_AnaKod.clProSettings.BorderColor=clAlphaColor.clHextoColor(BorderColorDeger);
    Pnl_AnaKod.clProSettings.BackGroundColor=clAlphaColor.clHextoColor(BackGroundDeger);
    Pnl_AnaKod.SetclProSettings(Pnl_AnaKod.clProSettings);
    Result=Pnl_AnaKod;
  }  
  
  label ve butonda hata almıyorum. 
< 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">


Mesajı Yazan: Emr.Erkmn
Mesaj Tarihi: 10 Kasım 2025 Saat 11:40
/////////////////////Anakod//////////////////////////////
uses Constant
var 
  Form2: TclForm;
  Toppanel,Toppanelright,anapanel,Rightpanel,Cuspnl,Ordpnl,Earpnl,Growthpnl,ChartPanel,notpanel,GridPanel :TclProPanel;
{
  Form2 = TclForm.Create(self);
  Constant.Init(Form2);

  Form2.SetFormColor('#222831','#222831',clGCross);

  Toppanel=Constant.cPaneller(Form2,'Toppanel',0,0,0,0,150,150,'#4A5560','#393E46');
  Toppanel.Align=alMostTop;
  
  Toppanelright=Constant.cPaneller(Toppanel,'Toppanelright',0,0,0,0,75,300,'#4A5560','#3A4750');
  Toppanelright.Align=alRight;
  
  anapanel=Constant.cPaneller(Form2,'anapanel',0,0,0,0,707,800,'#222831','#222831');
  anapanel.Align = alMostBottom;
  
  Rightpanel=Constant.cPaneller(Toppanel,'Rightpanel',0,0,0,0,300,75,'#393E46','#393E46');
  Rightpanel.Align=alMostRight;
  
  Cuspnl=Constant.cPaneller(Rightpanel,'Cuspnl',40,0,10,10,50,150,'#4A5560','#3A4750');
  Cuspnl.Align=alMostTop;
  
  Ordpnl=Constant.cPaneller(Rightpanel,'Ordpnl',15,0,10,10,50,150,'#4A5560','#3A4750');
  Ordpnl.Align=alTop;
  
  Earpnl=Constant.cPaneller(Rightpanel,'Earpnl',15,0,10,10,50,150,'#4A5560','#3A4750');
  Earpnl.Align=alTop;
  
  Growthpnl=Constant.cPaneller(Rightpanel,'Growthpnl',15,0,10,10,50,150,'#4A5560','#3A4750');
  Growthpnl.Align=alTop; 
  
  
  ChartPanel=Constant.cPaneller(anapanel,'ChartPanel',0,0,15,15,300,350,'#00ADB5','#3A4750');
  ChartPanel.Align = alBottom;
  
  notpanel=Constant.cPaneller(anapanel,'notpanel',0,15,0,15,300,200,'#4A5560','#3A4750');
  notpanel.Align = alLeft;
  
  GridPanel=Constant.cPaneller(anapanel,'GridPanel',30,15,15,15,400,200,'#4A5560','#3A4750');
  GridPanel.Align=alClient;
  
  Form2.Run;
}

///////////////////////////Constant///////////////////////////
var 
  Form1:TclForm
Function cPaneller(AParent: TclForm; Pnl_Isim: String;
                   TopDeger, BottomDeger, RightDeger, LeftDeger: Integer;
                   WidthDeger, HeightDeger: Integer;
                   BorderColorDeger, BackGroundDeger: String): TclProPanel;
var 
  Pnl_AnaKod: TclProPanel;

{
  Pnl_AnaKod = Form1.AddNewProPanel(AParent, Pnl_Isim); 
  Pnl_AnaKod.Margins.Top = TopDeger;
  Pnl_AnaKod.Margins.Bottom = BottomDeger;
  Pnl_AnaKod.Margins.Right = RightDeger;
  Pnl_AnaKod.Margins.Left = LeftDeger;
  Pnl_AnaKod.Width = WidthDeger;
  Pnl_AnaKod.Height = HeightDeger;
  Pnl_AnaKod.clProSettings.BorderColor = clAlphaColor.clHexToColor(BorderColorDeger);
  Pnl_AnaKod.clProSettings.BackgroundColor = clAlphaColor.clHexToColor(BackGroundDeger);
  Pnl_AnaKod.SetclProSettings(Pnl_AnaKod.clProSettings);
  Result = Pnl_AnaKod;
}
void Init(AForm);
 {
  Form1=AForm;
}
"init" mantığı, yeniden kullanılabilir kütüphaneleriniz (Constant) ile ana programınız (AForm) arasındaki bağlantı köprüsüdür. Bu köprüyü kurmak (init) zorunludur.
program, tam olarak bizim sürekli karşılaştığımız "Access violation... Read of address 00000000" hatasını engeller.



Mesajı Yazan: Gökçe ulusoy
Mesaj Tarihi: 10 Kasım 2025 Saat 13:53
https://static.cloudflareinsights.com/beacon.min.js/vcd15cbe7772f49c399c6a5babf22c1241717689176015" rel="nofollow - 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">

Function cAnaButonlar(AParent: TclForm; BtnIsim,BtnIcerik: String;TopDeger, BottomDeger, RightDeger, LeftDeger: Integer;
                   WidthDeger, HeightDeger: Integer;
                   BorderColorDeger,FontColorDeger: String;
                   FontSizeDeger:Integer;
                   FontVertAlignDeger:String;
                   RoundHeightDeger,RoundWidthDeger:Integer):TClProButton;
var 
  Btn_AnaKod:TClProButton;
  {
    Btn_AnaKod=Form.AddNewProButton(AParent, BtnIsim, BtnIcerik);
    Btn_AnaKod.Margins.Top=TopDeger;
    Btn_AnaKod.Margins.Bottom=BottomDeger;
    Btn_AnaKod.Margins.Right=RightDeger;
    Btn_AnaKod.Margins.Left=LeftDeger;
    Btn_AnaKod.Width=WidthDeger;
    Btn_AnaKod.Height=HeightDeger;
    Btn_AnaKod.clProSettings.BorderColor=clAlphaColor.clHextoColor(BorderColorDeger);
    Btn_AnaKod.clProSettings.FontColor=clAlphaColor.clHextoColor(FontColorDeger);
    Btn_AnaKod.clProSettings.FontSize=FontSizeDeger;
    Btn_AnaKod.clProSettings.FontVertAlign = FontVertAlignDeger;
    Btn_AnaKod.clProSettings.RoundHeight=RoundHeightDeger;
    Btn_AnaKod.clProSettings.RoundWidth=RoundWidthDeger;
    Btn_AnaKod.SetclProSettings(Btn_AnaKod.clProSettings);
  
    Result=Btn_AnaKod;
  }
Btn_AnaKod=Form.AddNewProButton(AParent, BtnIsim, BtnIcerik);kısmında hata alıyorum. “Invalid class typecast when evaluating instruction CallProc (‘AddNewProButton’)”



Sayfayı Yazdır | Pencereyi Kapat

Forum Software by Web Wiz Forums® version 12.07 - https://www.webwizforums.com
Copyright ©2001-2024 Web Wiz Ltd. - https://www.webwiz.net