تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
Delphi Windows Calculator
#1


كود :
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)
   Button1: TButton;
   Button2: TButton;
   Label1: TLabel;
   Label2: TLabel;
   Label3: TLabel;
   Label4: TLabel;
   Edit1: TEdit;
   Edit2: TEdit;
   Edit3: TEdit;
   Edit4: TEdit;
   Button3: TButton;
   Button4: TButton;
   Button5: TButton;
   Button6: TButton;
   Button7: TButton;
   Button8: TButton;
   Button9: TButton;
   Button10: TButton;
   Button11: TButton;
   Button12: TButton;
   Button13: TButton;
   Button14: TButton;
   Button15: TButton;
   Button16: TButton;
   procedure Button15Click(Sender: TObject);
   procedure Button1Click(Sender: TObject);
   procedure Button2Click(Sender: TObject);
   procedure Button3Click(Sender: TObject);
   procedure Button4Click(Sender: TObject);
   procedure Button5Click(Sender: TObject);
   procedure Button6Click(Sender: TObject);
   procedure Button7Click(Sender: TObject);
   procedure Button8Click(Sender: TObject);
   procedure Button9Click(Sender: TObject);
   procedure Button10Click(Sender: TObject);
   procedure Button11Click(Sender: TObject);
   procedure Button12Click(Sender: TObject);
   procedure Button13Click(Sender: TObject);
   procedure Button14Click(Sender: TObject);
   procedure Button16Click(Sender: TObject);
   procedure FormCreate(Sender: TObject);
 private
   { Private declarations }
 public
   { Public declarations }
 end;

var
 Form1: TForm1;
 a:Double;
 b:Double;
 c:Double;

implementation

{$R *.dfm}

procedure TForm1.Button10Click(Sender: TObject);
begin
 if Edit3.Text = '' then
   Edit1.Text:=Edit1.Text + '0'
   else
   begin
     Edit2.Text:=Edit2.Text + '0'
   end;
end;

procedure TForm1.Button11Click(Sender: TObject);
begin
 Edit3.Text:='+';
end;

procedure TForm1.Button12Click(Sender: TObject);
begin
 Edit3.Text:='-';
end;

procedure TForm1.Button13Click(Sender: TObject);
begin
 Edit3.Text:='x';
end;

procedure TForm1.Button14Click(Sender: TObject);
begin
 Edit3.Text:='/';
end;

procedure TForm1.Button15Click(Sender: TObject);
begin
Edit1.Text:='';
Edit2.Text:='';
Edit3.Text:='';
Edit4.Text:='';

end;

procedure TForm1.Button16Click(Sender: TObject);
begin
 if Edit3.Text ='+' then
   a:=StrToInt(Edit1.Text);
   b:=StrToInt(Edit2.Text);
   c:=a+b;
   Edit4.Text:=FloatToStr(c);

 if Edit3.Text ='-' then
   a:=StrToInt(Edit1.Text);
   b:=StrToInt(Edit2.Text);
   c:=a-b;
   Edit4.Text:=FloatToStr(c);

  if Edit3.Text ='*' then
   a:=StrToInt(Edit1.Text);
   b:=StrToInt(Edit2.Text);
   c:=a*b;
   Edit4.Text:=FloatToStr(c);

 if Edit3.Text ='/' then
   a:=StrToFloat(Edit1.Text);
   b:=StrToFloat(Edit2.Text);
   c:=(a)/(b);
   Edit4.Text:=FloatToStr(c)


end;

procedure TForm1.Button1Click(Sender: TObject);
begin
 if Edit3.Text = '' then
   Edit1.Text:=Edit1.Text + '1'
   else
   begin
     Edit2.Text:=Edit2.Text + '1'
   end;

end;

procedure TForm1.Button2Click(Sender: TObject);
begin
 if Edit3.Text = '' then
   Edit1.Text:=Edit1.Text + '2'
   else
   begin
     Edit2.Text:=Edit2.Text + '2'
   end;
end;

procedure TForm1.Button3Click(Sender: TObject);
begin
 if Edit3.Text = '' then
   Edit1.Text:=Edit1.Text + '3'
   else
   begin
     Edit2.Text:=Edit2.Text + '3'
   end;
end;

procedure TForm1.Button4Click(Sender: TObject);
begin
 if Edit3.Text = '' then
   Edit1.Text:=Edit1.Text + '4'
   else
   begin
     Edit2.Text:=Edit2.Text + '4'
   end;
end;

procedure TForm1.Button5Click(Sender: TObject);
begin
 if Edit3.Text = '' then
   Edit1.Text:=Edit1.Text + '5'
   else
   begin
     Edit2.Text:=Edit2.Text + '5'
   end;
end;

procedure TForm1.Button6Click(Sender: TObject);
begin
 if Edit3.Text = '' then
   Edit1.Text:=Edit1.Text + '6'
   else
   begin
     Edit2.Text:=Edit2.Text + '6'
   end;
end;

procedure TForm1.Button7Click(Sender: TObject);
begin
 if Edit3.Text = '' then
   Edit1.Text:=Edit1.Text + '7'
   else
   begin
     Edit2.Text:=Edit2.Text + '7'
   end;
end;

procedure TForm1.Button8Click(Sender: TObject);
begin
 if Edit3.Text = '' then
   Edit1.Text:=Edit1.Text + '8'
   else
   begin
     Edit2.Text:=Edit2.Text + '8'
   end;
end;

procedure TForm1.Button9Click(Sender: TObject);
begin
 if Edit3.Text = '' then
   Edit1.Text:=Edit1.Text + '9'
   else
   begin
     Edit2.Text:=Edit2.Text + '9'
   end;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
 Form1.Text:='DELPHI CALCULATOR By: Teody';
 Form1.Position:=poMainFormCenter;
end;

end.
الرد }}}
#2
السلام عليكم اخي المحترم ابو همام
شكرا على المثال الة حاسبة جزاك الله كل خير
لدي استفسار وهو ان نفس المثال بلغة VB.net  برمجته بـ 58 سطر
والمثال عندك حوالي 200 سطر احذف منهم الاقواس تقريبا 50 يبقى 150 سطر برمجي
والفرق كبير بالنسبة لعدد السطور البرمجية
السؤال : هل يمكن اختصار الاكواد وكتابتها بطريقة اخرى ام هذا هو الحد البرمجي؟ ام ان المثال بالبرمجة المبسطة الطويلة؟
لان من خلال فترتي البسيطة من تعاملي مع الدلفي وجدت قوة واحتصار في الكثير من الادوات مثل كومبوبوكس الالوان
فهو في الدلفي جاهز بينما في الفيجوال نحتاج الى انشائه  برمجبا بعدد لابأس به من السطور وهناك الكثير
وددت معلومات اكثر من تجربتك الثرة
دمت بخير
اعمل الخير وأجرك لا تنتظره فالله خير من إليك يرده
البرمجة ليست مجرد كود بل هي منهج تفكير منطقي لحل المشكلات







الرد }}}
تم الشكر بواسطة: حريف برمجة , sendbad100
#3
وعليكم السلام ورحمة الله

اجل الباسكال والدلفي تختصر الاشياء
لو تلاحظ المثال من موقع اجنبي وليس من برمجتي ولهذا انا حتى لم القي نظرة عليه ورفعته لدراسة الكود ومزيد من الافادة
طبعا بكل تأكيد يمكن اختصاره كثيرا
سوف احاول ان القي نظرة عليه وقت الحصول على فراغ
لا وقت فراغ عندي حقيقة هذه الايام و انا فقط لا اريد لقسم الدلفي ان ينام ولهذا ارفع امثلة جاهزة
الرد }}}
تم الشكر بواسطة: sendbad100 , ابراهيم ايبو
#4
اخي / ابو همام

اذا ممكن تعطينا اهم  وافضل المواقع الذي نجد فيها  امثلة كثيرة  للدلفي اقصد  مشاريع مفتوحة المصدر.
اذا سمح وقتك بذلك
اعرف باني ازيد الحمل عليك وانا اعلم انك مضغوط بالوقت  
(سامحني)
لاني مضغوط بالوقت مثلك وعارف ومقدر وضعك لذلك تجد تقدمي بطيء جدا
الرد }}}
تم الشكر بواسطة:
#5
المواقع كثيرة ولا اذكرها اما هذا المثال فمن هذا الموقع

لاحظ انه للغات برمجة كثيرة ومنها الدوت نت وغيرها

تفضل اخي هنا رابط امثلة الدلفي


كود :
https://www.sourcecodester.com/delphi
الرد }}}


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
Wink أول مشروع لي بلغة Delphi سعود 20 9,593 10-04-24, 12:43 AM
آخر رد: سعود
  برنامج صانع الاكواد نسخة جديدة Delphi sabre 1 1,313 31-10-23, 03:09 AM
آخر رد: abosilem
  برنامج صانع الاكواد Delphi sabre 2 2,457 12-08-23, 02:59 PM
آخر رد: sabre

التنقل السريع :


يقوم بقرائة الموضوع: