الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

النقر في جزء معين من الصورة

مغلق
بدأه albahr في 20 أبريل 2007 · 6 رد · 768 مشاهدة · في Microsoft Visual Basic.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ورحمة الله وبركاته....

دائما أجد في البرامج التي تعني بالقرآن الكريم أو البرامج التعليمة للأطفال مثلا يوجد بها صورة بحيث يقوم المستخدم بنقر في جزء من

الصورة فيتم تلوين ذالك الجزء بلون معين مع صدور صوت أو ظهور نص في Label أو ما شابه ،،،،،

فسوف يكون محور نقاشنا حول برامج القرآن الكريم ،،،،

فأحببت أن أتعلم هذه الطريقة التي أراها مهمة جدا في إستخدامها في كثير من المشاريع لأنه الكثير من المبرمجين لديه مشارع - وأنا

واحد منهم - قد يستفيد من هذا الموضوع، مثلا يعمل خارطة لمبنى مؤسسة ما بحيث ينقر على جزء معين من الخارطة كمبنى الإدارة

فيظهر له تفاصيل ذالك المبنى ، وغيرها من المشاريع ،،

قمت بشراء بعض البرامج التي تعرض القرآن الكريم مع التفسير وقراءة القرآن الكريم ،،،

ومع العلم هذه المشاريع عملت على VB6 ،، فسوف نتعاون لكي نعمل مثلها على VB2005.NET،،،،

قمت ببحث في ملفات هذا البرنامج فوجدت بعض الأدوات فحاولت التعامل معها ولكن لم أستطع أتعامل معها بشكل المطلوب ،،

هذا البرنامج مثل ما في الصورة بحث يقوم المستخدم بالنقر على الآية فيضهر نص التفسير مع تلاوة هذا الآية ،،،

0.48533011769518.jpg

في المرفقات الأدوات التي وجدتها في البرنامج مع صورة للقرآن الكريم مأخوذة من البرنامج ،،،

AniGIF.rar

#2

السلام عليكم ورحمة الله..

أخي الكريم:

أستطيع أن أوضح لك الفكرة البرمجية لتطبيق هذا المشروع، ثم عليك كتابة الكود وهو سهل إن شاء الله.

الفكرة كالتالي:

لو أخذنا مربعاً من النقاط على أداة الصورة، فإن هذا المربع سيكون له أربعة خصائص..

مثلاً:

left=12

top=49

Height=50

Width=338

هذا المربع على سبيل المثال يقوم بحصر صورة الآية "الحمد لله رب العالمين" من الصفحة.

الآن نسجل في قاعدة البيانات هذه المعلومات: الإحداثيات كذا وكذا تشير للآية كذا.

المرحلة الثانية نسجل في قاعدة البيانات وقت البداية ووقت النهاية لهذه الآية من الملف الصوتي.

فيصبح عندنا الجدول في قاعدة البيانات كالتالي:

نص الآية

البداية الصوتية

النهاية الصوتية

الشمال

الارتفاع

الطول

العرض

الآن ننتقل إلى مرحلة القراءة كالتالي:

أولاً: في حال اختيار المستخدم لآية معينة لتلاوتها، تكون العملية كالتالي:

نأخذ إحداثيات الماوس على الصورة حسب الإحداثيات التي اختارها المستخدم.

الآن نقوم بدراسة هذه الإحداثيات: إلى أي من المربعات الإحداثية المسجلة عندنا في قاعدة البيانات

تنتمي هذه النقطة التي اختارها المستخدم؟

إذا كانت تنتمي إلى المربع الأول مثلا نقوم بتشغيل الملف الصوتي بداية من "البداية الصوتية" وحتى "النهاية الصوتية".

ودراسة النقطة هل تنمي إلى هذا المربع سهلة كالتالي (حسب المثال الأول):

إذا كان شمال النقطة أكبر أو يساوي 12

وكان ارتفاع النقطة أكبر أو يساوي 49

وكان شمال النقطة أصغر أو يساوي 338+12 (شمال المربع + عرض المربع)

وكان ارتفاع النقطة أصغر أو يساوي 50+49 (ارتفاع المربع + طول المربع)

عندها النقطة هذه تنتمي إلى هذا المربع فنقوم بقراءة الآية "الحمد لله رب العالمين".

ثانياً: في حال أردنا أن نقوم بتلاوة مستمرة:

نقوم بدراسة (البوزيشن) للملف الصوتي المقروء فإن كان:

أكبر أو يساوي "البداية الصوتية"

وأصغر أو يساوي "النهاية الصوتية"

إذاً الآية المقروءة هي "الحمد لله رب العالمين".

عندها نقوم برسم مربع هذه الآية حسب الإحداثيات المسجلة عندنا..

أو نرسم خط تحت الآية..

أو نلون الآية، وكود تلوين الآية أظنه موجود في النت ابحث عنه، وهو عملية تلوين النقاط السوداء من صفحة بيضاء، هذه هي فكرته.

هذه هي الفكرة باختصار وأرجو أن أكون قد وفقت في شرحها..

من أهم الأخطاء التي تقع هيها معظم الشركات عند تنفيذ هذه الفكرة هي تقطيع الملفات الصوتية حسب الآية، وهذا يسبب مشاكل كبيرة وفشل في إظهار تلاوة جيدة..

الصحيح أن تقوم (بكر) تمرير الملف الصوتي إلى النقطة التي تبداً بها الآية وإيقافه عند النقطة التي تنتهي عندها الآية.

وهذا ممكن باستخدام أداة MCI32.ocx باستخدام الأمر TO.

ومشكلة هذه الأداة الرائعة أنها لا تقرأ سوى ملف من نوع wav

وهذه ليست مشكلة إذ أنه بالإمكان تحويل الملف إلى نوع wav وحفظه بنفس حجم الmp3 وبدقة صوتية عالية ولكن هذا الأمر يحتاج إلى خبرة بسيطة فقط في برامج الصوت.

علماً أنه يوجد أداة مشهور جداً ولا أذكر اسمها الآن، تقوم بتشغيل ملف mp3 وتعطيك أيضاً خيار (الكر) بواسطة الأمر (بوزيشن) الذي يكون فيها قابلاً للقراءة والكتابة.

ولكن مشكلة هذه الأداة أنها لا تقوم بقراءة كافة صيغ ملفات mp3.

هذه هي الأفكار الرئيسية لهذا المشروع، وسامحني على العجالة..

يسر الله أمرك.

والسلام عليكم ورحمة الله.

#3

هل يمكن التوضيح اكثر اخي العزيز

وهل يمكن اضافة مثال صغير لذلك

اشكرك جدا

وبالتوفيق ان شاء الله

تم تعديل هذه المشاركة بواسطة elsayed24 في 29 أبريل 2007 في 12:48

#4

السلام عليكم..

حياك الله، أخبرني عن النقطة التي لم تفهمها من الموضوع حتى أشرح أكثر عنها إن استطعت بإذن الله..

أما وضع مثال فهذا صعب علي سامحني..

واعلم أن الموضوع سهل وإن بدا معقداً، ولكن عند البدء بالتنفيذ يسهل إن شاء الله، لأن البرمجة تساعدك كثيراً في مثل هذه الأمور.

أنا نفذت هذا المشروع ب vb2005 و vb6 وهو ناجح ولا يوجد أية مشكلة أبداً..

ولم أستخدم أكثر مما ذكرت، ولكن تفكر قليلاً واستعن بالله ثم ابدأ العمل.

يسر الله لكم..

والسلام عليكم ورحمة الله.

#5

شكرا أخي أبو اليسر على الرد وجزاك الله خير ....

ولكن أخي سامحنا نثقل عليك شويه ... لو أدرجت لنا مثال وبالمثال يتضح المقال ... سيكون هذا المثال هو القاعدة الأساسية فهم الطريقة...بارك الله فيك..

حتى يتسنا لنا فهمه بشكل أفضل .. وأعتذر منك مرة أخرى على الإلحاح....

#6

أخي الكريم جربت الأداة MCI32.ocx ولكن عندما أدخل الملف بصيغة wav لا تقوم بتشغيله ولا أدري لماذا جربت أكثر من ملف فما هو الحل ....

أرجو أن تدج لنا مثال جعله الله في ميزان حسناتك والدال على الخير كفاعله بارك الله فيك .. أفدتنا الكثير لك الأجر ...

هذا الموضوع مغلق.

مواضيع مشابهة