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

@ مهم جدا @ : برنامج رسم فيه خاصية ( رسم مضلع ) ؟?

مغلق
بدأه طالب الخبرة في 10 سبتمبر 2004 · 21 رد · 2,940 مشاهدة · في لغة Ms Visual Basic 6 وما قبلها من إصدارات
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

حياكم الله أخواني الكرام.. لدي سؤال مهم جدا بالنسبة لي ومرتبط بفكرة مهمة!

ماهو البرنامج المطلوب؟

التوضيح : أود أن أقوم بعمل فورم بسيط يجعل للمستخدم امكانية الرسم على الفورم ( مثل أي برنامج رسم.. وكمثال برنامج الرسام على ويندوز ) ..

وأريد أن يكون برنامج الرسم بسيط جدا.. حيث لا يحتوي إلا على خيار رسم واحد!!

وهو : رسم مضلع .. ( للتوضيح قم بتشغيل برنامج الرسام واختر مضلع.. حيث يقوم برسم خط عادي.. وعند الخط على أي مكان في صفحة الرسم يكمل توصيل الخط إليه..وهكذا ! )

وأود أن يقوم البرنامج بالمهام التالية:

1 - مهم وخطير جدا : بعد رسم المضلع.. أود من البرنامج أن يقوم بعملية حساب بسيطة كالتالي:

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

خط 1 : نقطة البداية(100,150) نقطة النهاية (400,500)

خط2 : .... وهكذا!!

والمهم لدي وجود امكانية تنفيذ أمر لكل خط في البرنامج..

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

----------------------------------------------------------------------------

أخواني الكرام.. ودي أوضح نقطة مهمة..

أن العمل السابق مرتبط بفكرة رائعة لدي أتمنى أن أصل إليها..

وأنا للأسف خبرتي بالفيجوال بيسك ضعيفة.. فاذا ممكن تعطوني الكود الخاص بالفكرة وأنا أحاول أعدل عليه.. سؤال تود سؤالي إياه : لماذا لا تتعلم الفيجوال بيسك ما دمت تود عمل هذا البرنامج؟

الجواب الذي أرد به : أني لا أود أن أبتعد عن الهدف الذي أريده.. فالفكرة التي أود علمها مرتبطة بتعلم لغات عديدة وأشياء كثيرة .. فودي أركز على نقاط مهمة بالنسبة لي.. وأن يساعدني غيري في اكمال ما لا أفهمه حتى لا تكون عائق لاكمال الفكرة!!

وأتمنى أن تردوا علي في أقرب فرصة!!

حيث أن البرنامج مهم جدا!

شاكرا لكم تعاونكم

أخوكم طالب الخبرة

#2

:(

#3

السلام عليكم

مجموعة أمثلة للرسم ستفيدك كثيرا

تحياتي لك

CH08.zip

الإنسان الذي يقول بأنه لا يمكن عمل شيء يجب ألا يعيق مطلقاً الإنسان الذي يقوم بعمل ذلك الشيء.

إن تخطئ فأنت إنسان ... أما أن تلوم جهازك الكمبيوتر على خطأك فهذا أكثر إنسانية.

#4

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

مشكور أخوي الكريم prof_1982 ألف شكر على البرنامج الراائع!!

فقد توفرت الفكرة التي أريدها تماما!!

وقد توفرت في برنامج QuickDraw في اختيار رسم Polygon..

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

وللتسهيل دعني أوضح لك النقاط الباقية والتي أتمنى أن تساعدني في حلها :

1 - بداية.. هل من حل لطريقة اضافة ( خطوط طول وعرض أو احداثيات ) أو شبكة مثلا في مربع الصورة.. للتسهيل علي عند الرسم .. بحيث تكون مثل خيار المسطرة بالطول والعرض لتسهيل الرسم!

2 - وهي النقطة المهمة جدا : بعد أن قمت بالرسم على المربع الخاص بالرسم..

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

يعني يقول لي عندك 7 خطوط مثلا على الرسم..

واحداثياتها كالتالي:

الخط الأول: البداية(100.200) النهاية(300.450)

الخط الثاني: .... وهكذا!!

وأنتظر ردك أخوي الكريم على أحر من الجمر!!

والبرنامج مهم جدا بالنسبة لي!

أخوك المخلص طالب الخبرة

#5

:)

#6

:(

#7

اسف للتأخير ولكن لكثرة المشاغل ,, اعذرني فسوف ارد عليك بأقرب وقت ممكن .

الإنسان الذي يقول بأنه لا يمكن عمل شيء يجب ألا يعيق مطلقاً الإنسان الذي يقوم بعمل ذلك الشيء.

إن تخطئ فأنت إنسان ... أما أن تلوم جهازك الكمبيوتر على خطأك فهذا أكثر إنسانية.

#8

في انتظار ردك أخوي prof_1982.. :)

شاكرا لك تعاونك

أخوك طالب الخبرة

#9

طيب سؤال أخوي prof_1982..

هل المساألة التي أريدها صعبة؟؟

وننتظر ردك على أحر من الجمر!

واذا أمكن اضافتي عندك على الماسينجر:

Aziz3838@hotmail.com

أخوك طالب الخبرة

#10

السلام عليكم

اخي العزيز ،، اولا اسف للتأخير و ذلك بسبب المشاغل ،، لا أري الصعوبة في المسالة .

فقط قم بعمل مصفوفة من بعدين ،، وخزن عند حدث النقر القيمة X في البعد الاول و القيمة Y في البعد الثاني .

وهكذا .

الإنسان الذي يقول بأنه لا يمكن عمل شيء يجب ألا يعيق مطلقاً الإنسان الذي يقوم بعمل ذلك الشيء.

إن تخطئ فأنت إنسان ... أما أن تلوم جهازك الكمبيوتر على خطأك فهذا أكثر إنسانية.

#11

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

حياك الله أخوي الكريم prof_1982.. ومشكور ألف شكر على ردك

وأنا مقدر لمشاغلك أخوي الكريم ولا ودنا نعطلك!

ومشكور ألف شكر فقد وضحت لي الفكرة الأساسية للبرنامج..

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

وراح نتعلم منك يالغالي ( في البرمجة لا تقل لا أعرف ذلك بل قل سأجرب ذلك. )

فودي توصح لي ما هي الطريقة التي بامكاني أن أعمل بها مصفوفة عن طريق الفيجوال بيسك؟؟

وكيف أقوم فيما بعد بالتحكم بالمتغيرات الموجودة بالمصفوفة؟

وننتظر ردك يالغالي على أحر من الجمر

أخوك طالب الخبرة

#12

ملاحظة : سأقوم بالان بالبحث في المنتدى عن أي موضوع يخص المصفوفات في الفيجوال بيسك.. وأي سؤال سأحاول يصعب علي ان شاء الله سأقوم بطرحه هنا..

شاكرا لك تعاونك

أخوك طالب الخبرة

تم تعديل هذه المشاركة بواسطة طالب الخبرة في 16 سبتمبر 2004 في 10:30

#13

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

حياك الله أخوي الكريم prof_1982..

ودي أشكرك أخي الكريم على توضيحك لنقطة البداية وهي عن طريق المصفوفات..

وفي الدقائق السابقة المعدودة ( منذ اضافتي لردي السابق ).. قمت بالبحث على الانترنت عن المصفوفات وأحداث النقر على الماوس وغيرها..

ووجدت عددا من الدروس ((التي قمت بالفعل بتطبيقها ونجحت ولله الحمد..))

وودي أبين لك أني متحمس للفكرة .. فقمت بتعلم التالي:

1 - كيفية انشاء مصفوفة وتحديد عدد عناصرها.

2 - كيفية الاضافة لهذه المصفوفة.

3 - كيفية العرض من هذه المصفوفة ( من أهم النقاط :) )

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

1 - الأحداث المختلفة للنقر.

2 - كيفية اضافة أمر عند حصول الحدث.

3 - مهم جدا : كيفية معرفة احداثيات الموقع الذي نقرت عليه ( مثل مربع الصورة )

4 - كيفية عرض الاحداثيات التي ضغطت عليها بشكل متتالي.

(( ملاحظة : السابق تم تعلمه ولله الحمد ))

<HR>

فقط أخي الكريم وددت أن أوضح لك حماسي للفكرة وجاهزيتي للتعلم فقط أحتاج إلى أن تدلني للنقاط التي أحتاج لتعلمها..

ونأتي الآن للأسئلة :

1 - وهو السؤال المهم : كيف أقوم بانشاء مصفوفة من بعدين؟؟

حيث أني أقوم بانشاء مصفوفة كالتالي:

Dim Example(50) As String

2 - كيف أقوم باضافة البعدين لهذه المصفوفة؟ حيث أني أضيف البعد الواحد كالتالي:

Example(number) = inputbox$("أدخل العنصر التالي")

حيث أقوم بادخال الـ number داخل اداة تكرار For ..

3 - ما هي طريقة العرض من مصفوفة ذات بعدين؟ حيث أني أقوم بالعرض من مصفوفة البعد الواحد كالتالي:

Print Example(3)

4 - هل بالامكان أن لا أجعل للمصفوفة عدد معين من العناصر؟ حيث تقوم بالزيادة بنفسها من دون تحديد عدد معين من العناصر؟

وهل بالامكان هنا أن نعرض عدد العناصر المتوفرة؟

وننتظر ردك يالغالي

شاكرا لك تعاونك

أخوك طالب الخبرة

تم تعديل هذه المشاركة بواسطة طالب الخبرة في 16 سبتمبر 2004 في 11:24

#14

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

حياك الله أخوي الكريم prof_1982..

وأخيرا انتهيت من عمل مثال كامل لما قمت بتعلمه..

والمثال هو :

يوجد مربع صورة فارغ.. كل ما عليك هو أن تقوم بالنقر بشكل عشوائي في مناطق مختلفة من مربع الصورة..

فيقوم البرنامج بانشاء مصفوفة يدخل فيها قيم الاحداثيات السينية في المناطق التي نقرت عليها.

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

والمثال مرفق على شكل EXE للعرض بشكل مباشر!

وننتظر ردك على الاسئلة السابقة واقتراحاتك التي لا غنى لنا عنها!

شاكرا لك تعاونك

أخوك طالب الخبرة

Project1.exe

تم تعديل هذه المشاركة بواسطة طالب الخبرة في 16 سبتمبر 2004 في 13:26

#15

السلام عليكم

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

بدايتا سأساعدك بكل ما أملك طالما انت طالب للخبرة لتصبح خبيرا بأذن الله .

-------------

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

انظر الي هذا المثال :

Dim  Arr(1,2) As String

هنا لقد عرفنا مصفوفة نصية من عمودين وثلاث صفوف ، ربما تقول كيف هذا والمكتوب 1و 2 ،، المصفوفة تبدأ من صفر حتي الرقم الموجود دلخلها ،، لذلك الاعمدة هي 2 أي 0 و 1

والصفوف ثلاثة اي : 0 و 1و 2

وهكذا .

انظر الي الصورة التوضيحية التي رسمتها لك . ستفيدك كثيرأ

تحياتي لك .

array.zip

الإنسان الذي يقول بأنه لا يمكن عمل شيء يجب ألا يعيق مطلقاً الإنسان الذي يقوم بعمل ذلك الشيء.

إن تخطئ فأنت إنسان ... أما أن تلوم جهازك الكمبيوتر على خطأك فهذا أكثر إنسانية.

#16

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

حياك الله أخوي الكريم prof_1982.. وأشكرك ألف شكر على شرحك الرائع والوافي..

ونحن إنما نطلب الخبرة من الخبراء أمثالك..

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

والآن سوف أحاول التعديل على البرنامج للعمل على البعدين!!

وبعد لحظات ان شاء الله سوف أرفق البرنامج بعد التعديل بعد تجربة ما طرحته أنت أخي الكريم!!

واذا أمكن الاجابة على سؤالي السابق إلى أن آتي بالتعديل ان شاء الله:

4 - هل بالامكان أن لا أجعل للمصفوفة عدد معين من العناصر؟ حيث تقوم بالزيادة بنفسها من دون تحديد عدد معين من العناصر؟

وهل بالامكان هنا أن نعرض عدد العناصر المتوفرة؟

شاكرا لك تعاونك

أخوك طالب الخبرة

#17

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

مشكوووور أخوي prof_1982 ألف شكر على درسك الرااائع!

قمت بتطبيق الدرس و(((نجحت العملية ولله الحمد))) :).. والفضل يعود لله ثم لك أخي الكريم وعلى درسك الرائع المتميز في ايصال المعلومة بشكل ممتاز!!

وأبشرك خلاص تمكنت من العملية ولله الحمد..

وتم حل أغلب المشاكل اتلي كانت تواجهني!!

(((وطبعا تمكنت من اضافة البعد الثاني للمصفوفة بنجاااح!!)))

وعلى فكرة الان طبقت الفكرة البرمجية التي وددت أن أصل إليها بشكل كامل تقريبا!!

وأسمح لي أن أسألك أي سؤال حول الموضوع أخي الكريم حال توفره!!

شاكرا لك تعاونك وما قصرت يالغالي

وجزاك الله ألف خير

أخوك طالب الخبرة

تم تعديل هذه المشاركة بواسطة طالب الخبرة في 16 سبتمبر 2004 في 12:28

#18

يا ريت يتم ارفاق مشاريع التجريب مفتوحة المصدر بدلا من هيئتها التطبيقية :)

تحياتي لك

الإنسان الذي يقول بأنه لا يمكن عمل شيء يجب ألا يعيق مطلقاً الإنسان الذي يقوم بعمل ذلك الشيء.

إن تخطئ فأنت إنسان ... أما أن تلوم جهازك الكمبيوتر على خطأك فهذا أكثر إنسانية.

#19

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

اعذرنا أخي الكريم prof_1982 على ارفاق الملف السابق على شكل exe.. فقط كان المقصود هو سرعة العرض لديك!!

وان شاء الله من الآن سوف أقوم بارفاق الملفات بالمصدر المفتوح ليستفيد الجميع ان شاء الله!!!

وأبشرك يالغالي الآن قاعد أطور البرنامج أكثر وأكثر..

ولي استفسار أخير يالغالي..

كما تعلم أنه عندما أسمح للمستخدم بالرسم على مربع الصورة..

فإن بإمكانه الرسم على أي نقطة من مربع الرسم!!!

على سبيل المثال أراد رسم مربع.. سيصعب عليه أن يرسم مربع بدقة عالية!!

ما أود الوصول إليه هو:

هل بالامكان أن أكبر المسافات وأن لا أسمح للمستخدم إلا على نقاط معينة؟؟

مثلا يمكنه على مربع الرسم العادي أن يرسم بحدود 1400 نقطة..

أو أن أجعله يرسم على 350 نقطة فقط!!

لتسهيل الفكرة : لاحظ معي الفورم الخاص بالفيجوال بيسك..

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

ولكن عند وضع الشبكة بامكانك قياس أماكنها وغيرها!!

أتمنى أن تكون وصلت الفكرة..

وللتسهيل أرفقت صورة تمثل ما أريد.. حيث أود أن يتم الرسم على نقاط تقاطع الخطوط فقط دون المساس بالفراغات!!

أتمنى أن تكون وصلت الفكرة!!

وننتظر ردك يالغالي

شاكرا لك تعاونك

أخوك طالب الخبرة

post-1-1095337713_thumb.jpg

تم تعديل هذه المشاركة بواسطة طالب الخبرة في 16 سبتمبر 2004 في 15:28

#20

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

حياك الله أخوي prof_1982 والأخوان الكرام..

أخوي انسى السؤال السابق اذا كان بيأخرنا مش مشكلة بعدين نرجع له أو يمكن ما نرجع له مش مشكلة!!

وعندي سؤال جديد الان.. وقد يكون صعب بعض الشيء ولكن ان شاء الله يتم حله!!

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

علما أن الخطين يلتقون في نقطة نهاية الخط الاول وبداية الخط الثاني.. ( مرفق صورة لتوضيح الفكرة !! )

واذا أمكن أن يقوم باظهار قياس الزاوية من اليمين..

يعني مثلا ممكن يقول قياس الزاوية : 60 من جهة.. ومن الجهة الأخرى 300 درجة!!

فأبغى يظهر لي قياس الزوايا من جهة معينة أمشي عليها!! ( اذا أمكن ومش مشكلة مع المثال !! )

مع العلم توفر متغيرات خاصة باحداثيات كم من المستقيمين!!

ونننتظر ردك يالغالي

أخوك طالب الخبرة

post-1-1095370020_thumb.jpg

#21

:)

#22

:(

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

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

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…