Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
Delphi Yeni Sürümlerde Fonksiyon Tanımlama
#1
Herkese selam

Tuğrul hocanın Delphi C# Java konusundan geliyorum, yorumları tartışmaları görünce sorup sormamakta tereddüt ettim, forumun seviyesini biraz düşüreceğim ama

Function Topla(i1,i2,i3,i4,i5,i6:TEdit):string;
Var
  s1,s2,s3,s4,s5,s6,sonuc:real;
Begin
   s1 := strtofloat(i1.Text);
   s2 := strtofloat(i2.Text);
   s3 := strtofloat(i3.Text);
   s4 := strtofloat(i4.Text);
   s5 := strtofloat(i5.Text);
   s6 := strtofloat(i6.Text);
   sonuc := s1+s2+s3+s4+s5+s6;
   Result := floattostrF(sonuc,fffixed, 4, 2);
End;

Benzeri bir kod Delphi 2007 de çalışırken XE(x) veya Rio da neden E2003 Undeclared identifier: 'TEdit' (TImage vs vs) hatası veriyor? Belli ki tanımlama şekli değişmiş yardımcı olabilir misiniz?
Cevapla
#2
(29-09-2019, Saat: 23:26)Hayati Adlı Kullanıcıdan Alıntı: Herkese selam

Tuğrul hocanın Delphi C# Java konusundan geliyorum, yorumları tartışmaları görünce sorup sormamakta tereddüt ettim, forumun seviyesini biraz düşüreceğim ama

Function Topla(i1,i2,i3,i4,i5,i6:TEdit):string;
Var
  s1,s2,s3,s4,s5,s6,sonuc:real;
Begin
   s1 := strtofloat(i1.Text);
   s2 := strtofloat(i2.Text);
   s3 := strtofloat(i3.Text);
   s4 := strtofloat(i4.Text);
   s5 := strtofloat(i5.Text);
   s6 := strtofloat(i6.Text);
   sonuc := s1+s2+s3+s4+s5+s6;
   Result := floattostrF(sonuc,fffixed, 4, 2);
End;

Benzeri bir kod Delphi 2007 de çalışırken XE(x) veya Rio da neden E2003 Undeclared identifier: 'TEdit' (TImage vs vs) hatası veriyor? Belli ki tanımlama şekli değişmiş yardımcı olabilir misiniz?

Selamlar,

Kuvvetle muhtemel kütüphane tanımı yok Rio tarafında. Olması gereken şu şekilde aslında;

unit Unit1;

interface

uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
  Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls;

type
  TForm1 = class(TForm)
  private
    { Private declarations }
  public
    { Public declarations }
    function Topla(i1,i2,i3,i4,i5,i6: TEdit): string;
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

{ TForm1 }

function TForm1.Topla(i1, i2, i3, i4, i5, i6: TEdit): string;
var
  s1,s2,s3,s4,s5,s6,sonuc:real;
Begin
   s1 := strtofloat(i1.Text);
   s2 := strtofloat(i2.Text);
   s3 := strtofloat(i3.Text);
   s4 := strtofloat(i4.Text);
   s5 := strtofloat(i5.Text);
   s6 := strtofloat(i6.Text);
   sonuc := s1+s2+s3+s4+s5+s6;
   Result := floattostrF(sonuc, fffixed, 4, 2);
end;

end.

Delphi 7'yi en son 12 yaşında kullandım. Belki varsayılan olarak TEdit sınıfını içeren bir kütüphane mevcuttur. Hatırlamıyorum uzun zaman oldu. 

Mission Completed:

ow59i8.png
İyi çalışmalar.


Ek olarak evet kütüphane tanım şekillerinde değişiklik oldu. VLC, FMX gibi ekler getirildi.


BEN DELPHİ 7 ANLAMIŞIM BU ARADA Sad
kisisel_logo_dark.png
WWW
Cevapla
#3
İlginç. Tesekkur ederim.
Cevapla
#4
(29-09-2019, Saat: 23:38)Hayati Adlı Kullanıcıdan Alıntı: İlginç. Tesekkur ederim.

Rica ederim, birde eklemem gereken şey şu; kütüphane isimleri aslında XE ile birlikte geldi diyebiliriz. Gerek çok platformlu bir yapıya geçiş yapması gerekse -kendi düşüncem- azcık C# kütüphanelerine benzetmek için yani sınıflandırmak için bu tip bir değişikliğe gitmiş olabilirler.
kisisel_logo_dark.png
WWW
Cevapla
#5
(29-09-2019, Saat: 23:26)Hayati Adlı Kullanıcıdan Alıntı: Herkese selam

Tuğrul hocanın Delphi C# Java konusundan geliyorum, yorumları tartışmaları görünce sorup sormamakta tereddüt ettim, forumun seviyesini biraz düşüreceğim ama

Function Topla(i1,i2,i3,i4,i5,i6:TEdit):string;
Var
  s1,s2,s3,s4,s5,s6,sonuc:real;
Begin
   s1 := strtofloat(i1.Text);
   s2 := strtofloat(i2.Text);
   s3 := strtofloat(i3.Text);
   s4 := strtofloat(i4.Text);
   s5 := strtofloat(i5.Text);
   s6 := strtofloat(i6.Text);
   sonuc := s1+s2+s3+s4+s5+s6;
   Result := floattostrF(sonuc,fffixed, 4, 2);
End;

Benzeri bir kod Delphi 2007 de çalışırken XE(x) veya Rio da neden E2003 Undeclared identifier: 'TEdit' (TImage vs vs) hatası veriyor? Belli ki tanımlama şekli değişmiş yardımcı olabilir misiniz?

Merhaba,
"E2003 Undeclared identifier", küçüklere hep derler ye: "bak yavrum, sakın tanımadığın yabancı kişilerle konuşma...". IDE de aynen bunun gibi yapar. 
Bir tipi kullanabilmesi için mutlaka ilgili interface veya imlementetion'ın tanımlanmış olması gerekir. 
Uses tanımlayıcısı tüm delphi sürümlerinde var. hatta buna Turbo Pascal da dahil.
Delphi yeni sürümlerde en hassas olduğu konu geriye dönük kod uyumluluğudur.  Yani Visual Studio'da olduğu gibi çoğu zaman yeni bir projeyi sil baştan yapmıyorsunuz.
DelphiCan'dır!
Cevapla


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  yapay zeka delphi kl007 9 629 26-02-2026, Saat: 09:12
Son Yorum: mrmarman
  Win 11 ve Delphi 7 Minimize sorunu. enigma 7 507 11-02-2026, Saat: 10:27
Son Yorum: RAD Coder
Question Delphi formunu nasıl otomatik tam ekran yapabilirim ? erdemklt0 2 329 23-01-2026, Saat: 10:02
Son Yorum: csunguray
  PAVO Pos Cihaz Entegrasyonu (Yeni Nesil ÖKC) RAD Coder 3 1.112 26-12-2025, Saat: 17:06
Son Yorum: rmzgenius
  Delphi SLL kullanım sorunu Bay_Y 12 1.318 22-12-2025, Saat: 18:11
Son Yorum: Bay_Y



Konuyu Okuyanlar: 1 Ziyaretçi