السلام عليكم ورحمة الله وبركاته
بسم الله الرحمن الرحيم
اخوانى الأعزاء ... إن شاء الله من اليوم هنبدأ عمل مشروع برنامج يتعلق بحساب الزكاة بجميع أنواعها وإن شاء الله يكون عمل نافع للإسلام وللمسلمين ... ويشارك فيه الجميع من أجل الأجر والثواب ...
طبعاً أى مشروع برنامج بيحتاج لفكرة ... وبعد الفكرة يحتاج لتطبيق ... أى ان اى برنامج ينقسم لخطوتين أعداد الفكرة من قبل شخص ... وتنفيذ الفكرة من جانب شخص أخر ...
فمرحلة التنفيذ ستكون على كل من يعرف أن يكتب بأى لغة برمجة ... ولكن الفكرة يمكن أن يشارك بها أى شخص ويضع تخيل البرنامج كما يريده .. وهنا ستتم مناقشة الأفكار ومن بعدها التنفيذ والتطوير للبرنامج إن شاء الله إلى أن نصل إلى نسخة تصلح للجميع وننشرها مجاناً لمن يريد الإستفادة ...
وقد شجعنى على هذا وجود أخوة كالأخ أحمد المصرى واخونا النهر ... وإن شاء الله نبدأ المسيرة ويستفاد منها طالبى العلم .. وكذلك المستخدمين للبرنامج فيما بعد ...
واليوم سأبدأ بوضع أولى برامجى الخاصة بحساب زكاة المال (فقط) وهو برنامج يتوقف على ثلاث إحتمالات ...:-
الإحتمال الأول :-
وهو أن يمر على المبلغ الذى تملكه سنة كاملة وتكون أنت على علم بحد النصاب .. ومن ثم تعلم أن المبلغ الذى تملكه يبلغ حد النصاب فتحدد العلامة على دائرة النصاب كما موضح بالصورة وسيظهر لك text box تضع به المبلغ الذى تملكه .. ومن ثم تضغط على زرار إحسب الزكاة .. فتخرج الزكاة التى تم إحتسابها فى ال text box الذى يقع تحت زرار احسب الزكاة مباشرة .. كما مبين بالصورة ..
الإحتمال الثانى :-
وهو عندما لا نعلم إن كان المبلغ الذى نملكه لم يبلغ حد النصاب أم لا .. فكما نعلم أن هناك الفضة والذهب .. وفى هذا الجزء سيتم إحتساب الزكاة على أساس ان المبلغ يساوى 600 جرام فضة ... وأسف لأن هناك خطأ فى الصورة حيث أننى كنت احتسبت مبلغ النصاب على اساس انه يعادل 99 جرام فضة ... وهذا خطأ قمت بتعديله الحمد لله ...
عندما تضغط على الدائرة التى تشير الى الفضة .. سيظهر لك اتنين text box واحد ستضع فيه المبلغ الذى تملكه .. والاخر ستضع سعر جرام الفضة فى بلدك ... فإن بلغت حد النصاب .. سيخرج المبلغ المستحق للزكاة فى الـ text box الذى يوجد اسفل زرار إحسب الزكاة ,,, وإن لم يكتمل حد النصاب .. فستظهر رسالة تقول أنه لم يبلغ حد النصاب كما سيوضح فى الصورة القادمة إن شاء الله ...
الإحتمال الثالث:-
أن تحسبها تبعاً لجرام الذهب ... ويتم معرفة حد النصاب ما يعادل 85 جراماً من الذهب .. ولابد من مرور سنة كاملة على حوزة هذا المبلغ المعادل لـ 85 جرام ذهب ... وعندما تضغط على الدائرة التى تشير إلى الذهب فسيظهر اتنين text box كما حدث فى الفضة ... وستدخل المبلغ الذى تملكه فى الصندوق الأول .. وسعر جرام الذهب فى بلدك فى الصندوق الثانى .. وبعد كده لو اكتمل حد النصاب هيظهر مبلغ الزكاة فى الصندوق اللى تحت زرار احسب الزكاة ... ولو مش اكتمل ستظهر رسالة زى اللى ظاهرة فى الصورة أعلاه ...
هذه هى فكرة البرنامج كفكرة عامة ... وهناك زرار about me وزرار احسب حساب جديد المسئول عن مسح كل الخانات لإعادة إحتساب زكاة جديدة ... وهناك زرار خروج .. لتسجيل الخروج من البرنامج ...
والآن مع كود البرنامج لإستفادة الذى يريد أن يطور من هذا البرنامج ... وكمساعدة للأخوة المبتدئين إن شاء الله ...
كود:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Media;
using WMPLib;
namespace Zakah
{
public partial class Form1 : Form
{
double x; double y; double z;
WindowsMediaPlayerClass gg = new WindowsMediaPlayerClass();
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
//gg.URL = "file://E://Su.wav";
//gg.play();
t2.Visible = false;
label2.Visible = false;
r3.Checked = true;
}
private void button1_Click(object sender, EventArgs e)
{
try
{
if (r3.Checked == true)
{
x = Convert.ToInt16(t1.Text);
x = x * 0.025;
t3.Text = "المبلغ المستحق للزكاة " + " "+ x.ToString();
}
else if (r2.Checked == true)
{
x = Convert.ToInt16(t1.Text);
y = Convert.ToInt16(t2.Text);
if (x >= y * 600)
{
z = x * 0.025;
t3.Text = "المبلغ المستحق للزكاة " + " " + z.ToString();
}
else
{
t3.Visible = false;
label3.Text = "لا يوجد عليك زكاة حيث إنك لم تبلغ حد النصاب";
}
}
else if (r1.Checked == true)
{
x = Convert.ToInt16(t1.Text);
y = Convert.ToInt16(t2.Text);
if (x > y * 85)
{
z = x * 0.025;
t3.Text = "المبلغ المستحق للزكاة " + " " + z.ToString();
}
else
{
t3.Visible = false;
label3.Text = "لا يوجد عليك زكاة حيث إنك لم تبلغ حد النصاب";
}
}
}
catch
{
label3.Text = "عذراً تأكد من إدخال البيانات بطريقة صحيحة";
}
}
private void r3_CheckedChanged(object sender, EventArgs e)
{
t3.Clear(); t1.Clear();
t2.Visible = false;
label2.Visible = false;
label1.Text = "ادخل مبلغ النصاب";
}
private void r2_CheckedChanged(object sender, EventArgs e)
{
t3.Clear(); t1.Clear(); t2.Clear();
t2.Visible = true;
label2.Visible = true;
label2.Text = "أدخل سعر جرام الفضة";
label1.Text = "ادخل المبلغ الذى بحوزتك";
}
private void r1_CheckedChanged(object sender, EventArgs e)
{
t3.Clear(); t1.Clear(); t2.Clear();
t2.Visible = true;
label2.Visible = true;
label2.Text="أدخل سعر جرام الذهب";
label1.Text = "ادخل المبلغ الذى بحوزتك";
}
private void button1_Click_1(object sender, EventArgs e)
{
t3.Clear(); t1.Clear(); t2.Clear();
label3.ResetText();
t3.Visible = true;
}
private void t1_TextChanged(object sender, EventArgs e)
{
label3.ResetText();
}
private void button2_Click(object sender, EventArgs e)
{
Application.Exit();
}
private void button3_Click(object sender, EventArgs e)
{
MessageBox.Show(" "+" Designed by" + " \n " + " "+"Maged Almasry"+ " \n " +"maged_almasry2005@yahoo.com");
}
}
}
وأى استفسار لأى شخص أنا جاهز فى الخدمة .... والله يوفق الجميع لما فيه الخير والثواب ...
وأرجو ممن يعرف عن موضوع الزكاة معلومات فليأتى هنا ويلخصها فى شكل قوانين لكى نقوم بتطوير البرنامج وعمله لإحتساب كل انواع الزكاة إن شاء الله ... وأرجو التأكد من أى معلومة قبل وضعها .. ولا يكون اصلها النت فقط !!! ارجو التأكد منها تمام التأكد ....
وأرجو أيضاً من الأخوة أحمد المصرى والاخ النهر ... متابعة الموضوع لكى نطور البرنامج إن شاء الله فى أسرع وقت ... وبالتوفيق للجميع ...
وأنا فى الخدمة لأى استفسار من أى شخص ...
[hide]والبرنامج فى المرفقات[/hide]
والبرنامج فى المرفقات بأسم Zakh.exe لأنى مش عملت ليه publish لسة ,,,, هتلاقيه جوة فولدر اسمه debug
تقبلوا وافر إحترامى وتقديرى
أخوكم المشاكس