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
Yazılım Topluluğumuz -> Tıklayın
Kişisel Tanıtım Sitem -> Tıklayın
20 y/o, sadece öğrenmeye odaklanmış, insancık..
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.
Yazılım Topluluğumuz -> Tıklayın
Kişisel Tanıtım Sitem -> Tıklayın
20 y/o, sadece öğrenmeye odaklanmış, insancık..
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.
While true do; Hayat döngüsü, kısır değildir! Yapılan bir yanlış, o döngünün dışına çıkmanızı sağlayacaktır.
WWW
Cevapla


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  Delphi 10.3 Rest Debugger sorunu varyemez 4 141 31-05-2020, Saat: 01:36
Son Yorum: varyemez
  python, c++ for delphi tarzında eğitim, delphi ile diller arası entegrasyon eroniko 3 111 26-05-2020, Saat: 18:15
Son Yorum: engerex
  Delphi 10.3 Rio KeyBindings Abdullah ILGAZ 5 241 19-05-2020, Saat: 02:37
Son Yorum: Abdullah ILGAZ
  [Ödüllü Soru] Object türüne göre nesne üreten fonksiyon Abdullah ILGAZ 0 120 18-05-2020, Saat: 23:22
Son Yorum: Abdullah ILGAZ
Lightbulb Delphi Proje Yardım ThePixeL 18 1.264 29-04-2020, Saat: 02:28
Son Yorum: ThePixeL



Konuyu Okuyanlar: 1 Ziyaretçi