• الإعلانات

    • فيصل الحربي

      تسجيل عضوية جديدة في المنتدى   01/31/2016

      السلام عليكم ورحمة الله وبركاته  عزيزي العضو الجديد :  حاليا رسالة الإيميل لتأكيد صحة إيميلكم تذهب للبريد العشوائي ( جاري حل المشكلة )  فإذا لم تجد رسالة التحقق من إيميلكم في صندوق الوارد لديكم إتجه للبريد العشوائي ( JUNK)  وقم بتفعيل إشتراككم من هناك   

HMS

الخبراء المعتمدون
  • عدد المشاركات

    931
  • تاريخ الانضمام

  • تاريخ اخر زياره

كل شيء نشر بواسطة HMS

  1. لا زلنا في طور أرشفة هذا القسم وسيأخذ الأمر منّا فترة قصيرة بإذن الله لإدراج كامل المشاركات المفيدة في القسم تسهيلاً عليكم البحث... أهلاً وسهلاً بك أخي العضو الجديد في قسم الفيجوال بيسك نيت، نرجو أن تستفيد من هذه المشاركات: مصادر التعلم * مكتبة الدوت نيت، وتجد فيها كتباً قيمة وهي أكثر من كافية لجعلك بحاراً ماهراً في عالم ال NET، سيتم إضافة كتب جديدة كلما سنحت الفرصة: http://www.arabteam2000-forum.com/index.php?showtopic=52429 * MSDN Magazine ، مجلة شهرية تصدر عن مايكروسوفت، سيتم إضافة روابط الأعداد الجديدة أولاً بأول، لذا فزر الرابط بإنتظام: http://www.arabteam2000-forum.com/index.php?showtopic=44785 * The .NET Show، عروض فيديو من شركة مايكروسوفت: http://www.arabteam2000-forum.com/index.php?showtopic=42477 * Recommended Dowloads, برامج و أكواد يُنصح بتحميلها: http://www.arabteam2000-forum.com/index.php?showtopic=50815
  2. وضعت كتاباً جديداً(Core C# and .NET) في مشاركة مستقلة،لعدم معرفتي بأن هناك موضوعاً مثبتاً للكتب خاص بهذا القسم، أعتذر عن ذلك الخطأ وها هو الرابط: Core_C_Sharp_and_dot_NET.zip أو من هنا
  3. لا زلنا في طور أرشفة هذا القسم وسيأخذ الأمر منّا فترة قصيرة بإذن الله لإدراج كامل المشاركات المفيدة في القسم تسهيلاً عليكم البحث...
  4. السلام عليكم، كتاب حديث للتحميل، الكتاب واسع وشامل راجياً أن ينال رضاكم. أسم الكتاب: Core C# and .NET عدد الصفحات: 1008 الحجم: حوالي 5 ميغابايت (قمت بتقسيم الملف إلى قسمين مستخدماً برنامج winrar) تاريخ النشر: September 06, 2005 الناشر: Prentice Hall PTR Written for C# 2.0 and .NET 2.0: contains coverage of generics, Master Pages, the DataGridView, and other new features Covers Web development, Windows development, data management, security, threading, remoting, and much more Presents hundreds of non-trivial code examples that help you solve real-world problems ArabTeam2000.part1.rar
  5. كيفك يا إياس؟ لا يوجد يا إياس شيء إسمه محمي ومشفر في البرمجة، وجميع مقترحات الأخوة الأفاضل تتساوى في قيمتها ولن يستطيع أحد أن يقوم بتقديم حل أفضل مما قدموا (أقصد من ناحية القدرة على الحماية)، هناك الكثير من الأفكار وأكثرها إتباعاً لدى المبرمجين هي أن تضع النص الذي تريده في ملف مع عمل Encryption للنص، ولكن هذه الطريقة تتساوى في قدرتها على الحماية مع ما طرحه الأخوة، جميع المقترحات المقدمة تقدم لك حماية 100 بالمائة ما دامت شفرة برنامجك بعيدة عن عيني المستخدم، أما إن إستطاع المستخدم فكّ شفرة البرنامج (وهو أمر سهل لجميع لغات البرمجة بدون إستثناء) فإن جميع الطرق هي عديمة الجدوى على الأطلاق (سواء وضع النص في قاعدة بيانات محمية أو عمل encryption للنص ..ألخ) ... الملخص: تسطيع أن تجعل مهمة الآخرين صعبة في معرفة النص الذي تريد إخفاءه ولكن لن تستطيع جعل مهمتهم مستحيلة على الإطلاق وهنا يأتي السؤال عن أفضل الطرق لتحقيق تلك الغاية، أعتقد بأن ال Encryption هو الأفضل بلا منازع.
  6. سنقوم في هذا القسم بطرح سؤال إسبوعي يتعلق بالفيجوال بيسك نيت ونترك للأخوة محاولة حله وكتابة الحل هنا، وسنقوم معاً بدارسة الحلول المقترحة (إن كان هناك أكثر من حل صحيح) والتصويت معاً على أفضل الحلول. والغاية من هذا الأمر هو تحفيز الأعضاء على دراسة نقطة ما يتمحور السؤال حولها عملاً بالقاعدة التي أؤمن بها وهي "أفضل الطرق لدراسة لغة برمجة هي الإجابة على مشكلة أو سؤال". يشرفني أن أطرح سؤال الإسبوع الاول وهو حول ال GDI+ ، والقضية مكونة من شقين وقد أرفقت الملفين التنفيذيين للبرنامجين حتى تفهموا تماماً ماذا أقصد : 1) أريد أن أمكن المستخدم من إستخدام الفأرة Mouse بحيث يستطيع رسم شكل حر (سواء القيام برسم شكل أو كتابة كلمة)، فكما نعلم فإنه من السهل رسم مثلث أو مربع أو دائرة...الخ، ولكن كيف أستطيع أن أجعل المستخدم قادراً على رسم شكل حر أو كتابة كلمة مستخدماً الماوس فقط، مع إعطاء المستخدم الحرية بإختيار حجم القلم المستخدم ولونه، وكذلك المطلوب هو أن المستخدم عندما يبدأ بالكتابة (أي بعد أن يضغط بزر الماوس الأيسر وجره) أن تتغير ال cursor الى شكل قلم (الملف التنفيذي مرفق بإسم freehand وال cursor موجودة وهي عبارة عن صورة قلم صغير). 2) الشق الثاني، أريد أن أمكن المستخدم من رسم مستطيل حر، اي أنه بمجرد أن يضغط على الماوس ويقوم بجره على الفورم يظهر له مستطيل لونه أبيض وبمجرد أن يترك الماوس يظهر المستطيل النهائي على الفورم وليكن لونه أحمر، مع إعطاء المستخدم الحرية بتغيير حجم المستطيل وإتجاهه ما دام ضاغطاً على زر الماوس، وهذا الأمر يشبه تماماً ما نقوم به عندما نعمل selection على سطح المكتب في الويندوز (الملف التنفيذي مرفق بإسم selection). GDI.zip
  7. السلام عليكم ورحمة الله، كتاب حديث حول الفيجوال بيسك 2005، أظنه مفيداً للمبتدئين، أرجو لكم معه الفائدة: أسم الكتاب: Visual Basic 2005 Jumpstart تاريخ النشر: أيلول (9) 2005 عدد الصفحات: 214 الناشر: O'Reilly و هارون السوالقه :unsure: كل عام وأنتم بخير Visual Basic 2005 Jumpstart.zip
  8. السلام عليكم ورحمة الله، مشاركتي هذه هي لمجرد المشاركة (بسبب تأنيب الضمير عن غيابي الطويل) وليس بحثاً عن حل. السؤال: عندي مجموعة من الأزرار Buttons أريد أن أعملها في برنامجي في وقت التشغيل، أنا لا أعلم عدد الأزرار ولا أعلم عرض الفورم (فقد يقوم المستخدم بتكبيره أو تصغيره)، والقضية هي أنني أريد عمل هذه الأزرار وترتيبها في وقت التشغيل بحيث تكون موزعة بشكل منسّق في الفورم بحيث يكون الزر الأول يبعد 10 بيكسل عن حافة الفورم الأيسر (أو أي رقم تريده) ويكون الزر الثاني بعد الزر الأول + 10 بيسكل وهكذا، وعندما لا يكون عرض الفورم كافياً لإستيعاب جميع الأزرار نقوم بوضع الأزرار في سطر جديد بحيث يكون هذا السطر يبعد عن السطر الأول بمقدار 10 بيسكل... وهكذا. لقد أرفقت ملفاً تنفيذياً يبين هذا الأمر (يوجد فيه textbox) تستطيع وضع عدد الأزرار الذي نريد عملها... ملاحظة: في الملف التنفيذي المرفق قمت بوضع panel ونسيت أن أعمل لها dock في أسفل الفورم (أي أن عرضها متغيراً ويساوي حجم الفورم عندما نقوم بعمل resize للفورم)، أرجو مراعاة ذلك في حل السؤال. أرجو محاولة حل المسألة الرياضيّة وسأقوم بوضع ال solution لاحقاً إن لم يتوصل أحد إلى حل. WindowsApplication2.zip
  9. لقد طُلب مني مشروع لإدارة المعلومات لشركة تتعامل مع السيارات، قاعدة البيانات فيها معلومات كثيرة عن السيارة ورقمها ورقم المحرك وسعته والشركة الصانعة ...الخ، الخ، الخ، وهذه المعلومات قد تتكرر للسيارة الواحدة، الحقيقة لقد عملت المشروع وإنتهيت منه وقد واجهت قضية في المشروع في حينه وأحببت أن أسمع رأيكم إن كان هناك طريقة أفضل لحل القضية، وإختصاراً ولتسهيل القضية سأفترض بأن قاعدة البيانات مكونة من جدول واحد وثلاثة أعمدة لا غير ( رقم السيارة، رقم المحرك، إسم الشركة الصانعة)، وأريد هنا وعند تشغيل البرنامج أن يقوم البرنامج بعمل loop في الجدول فإن كان هناك row في الجدول يشابه آخراً يقوم بأخذ أحدهما فقط (وإظهاره في داتاسيت للتعامل معه لاحقاً)...وللتبسيط الملل فإن المعلومات في الجدول هي كالتالي: رقم السيارة رقم المحرك الشركة الصانعة 45 555 Toyota 232 343 Nissan 45 555 Toyota لاحظ بأن ال row الأول والثالث يعودان لنفس السيارة، في هذه الحالة أنا أريد فقط أخذ row واحد منهما... الحلّ الذي أعتمدته هو أن أقوم بتحميل جميع الجدول في داتاسيت وبعض ذلك أعمل array من نوع string عدد عناصرها يساوي عدد ال rows في الجدول، وبعد ذلك قمت بجعل العنصر الأول من المصفوفة هو حاصل لجمع الأعمدة الثلاثة من الصف الأول للجدول، أي بالشكل التالي: Toyota55545 أما العنصر الثاني من المصفوفة فهو: Nissan343232 وبعد ذلك سأقوم بالتعامل مع المصفوفة وطرح ما تساوى من عناصرها. هذا هو الحل الوحيد الذي توصلت إليه، هل هناك من حل أفضل أو أسرع؟ وهل يوجد عندنا طريقة في الفيجوال بيسك نيت لمقارنة صفّين من جدول ما؟؟؟؟ أرجو تعليقاتكم الكريمة
  10. نعم يوجد جملة resume ولكنها لن تنفع في حلّ السؤال المطروح
  11. ليس بالضرورة أن تكون الأيقونة موجودة في مجلد المشروع، الأيقونة هي موجود ولكنها في ال resources (أما إذا أضفت الأيقونة برمجياً وليس عن طريق الخصائص المرئيّة ففي هذه الحالة يجب أن تكون في مجلد المشروع أو في أي مجلد تحدده في الكود). أما كيف تضع الأيقونة على سطح المكتب أو في قائمة البرامج فذلك لا علاقة له بأسناد أيقونة للبرنامج، فأنت يجب أن تعمل shortcut للبرنامج على سطح المكتب أو في قائمة البرامج -ابدأ- وذلك من خلال البرنامج الذي تستخدمه لعمل setup لبرنامجك (مثلاُ setupfactory).
  12. يجب أن تعرفه بالصورة التالية: dim withevents lbl as new lablel ثم بعد ذلك تقوم بعمل handler له
  13. مثال جيد جدا للمتدئين

    الكثير من مشاركات هذا المنتدى (ومنها هذه المشاركة) تطرح القضيّة بشكل مختصر وعلى شكل "برقيّة"، ما المانع لو قمت أخي moudar345 بشرح بسيط وبأسطر قليلة عن طبيعة المثال وماذا سنستفيد منه وما الجدّيد الذي قُمت به، وهذا الأمر أيضاً سيفيد أي من الأخوة في المستقبل عندما يحاول البحث في المنتدى عن حلّ ما لمشكلة تواجهه.
  14. فعلاً "طولوا بالكم على الرجل"، أراد الخير والمصلحة العامّة... على كل حال، مشاركته هذه هي درس جيّد له بأن يعدّ لل 1000 قبل أن ينقل مقال من أحد المنتديات العربيّة. نشكر أستاذنا أحمد غريب الذي بيّن لنا بأن الملف المذكور هو ملف مهمّ، كنت فعلاً على وشك حذفه وحذف المجلّد system32. :lol: سامحك الله eng-1904 والله أخي crazy-man ليست تلك بإشاعة 100 %، فقد قرأت في أحد المجلات بأن بعض الدول قد طورّت ما يسمى ب "القنبلة العنصريّة"، وهي تستهدف "الملوّنين" - أي النّاس الذين لا يحملون البشرة البيضاء القوقازية - وتميّزهم عن طريق المادّة المُلوّنة المُسببة تشكيل لون البشرة (كلما كانت المادة موجودة أكثر في جسدك كلما كان تأثيرها أكبر).... أما كيف تعرف القنبلة بأن الإنسان مسلم أم لا فذلك أيضاً ليس صعباً (تحاول أن تبحث عن مُسواك في جيبة قميصه :lol: ). وبعيداً عن المزاح فإن إستهداف المستخدم العربي دون العالمين بفيروس ليس أمراً صعباً على الاطلاق، يكفي مثلاً أن يحاول الفيروس البحث عن أعدادات الجهاز فإن كانت إعداداته عربيّة فسيقوم بدوره التخريبي...
  15. لقد تداعت الأمم علينا تداعي الكِلاب، أهانات بطول الأرض وعرضها وحكامنا يستدعون سفراءنا للتشاور (بالطبع الأمر فقط للضحك علينا ذقوننا وخداعنا). هل تهب الأمة للدفاع عن نفسها في هذه الحرب الصليبيّة، هل نفعلها ونجبر الدمى التي تتحكم برقابنا بإيقاف تصدير النفط، هل يطلّ علينا حاكم فقط ليهدد (فقط تهديد) بقطع النفط إن لم يوقف مسلسل إهانة ديننا وقراننا ونبينا، أم أننا أدمنّا الهوان كما أدمنوا هم تناول نفطنا... شركة أمريكية تقوم بتصنيع "مرحاض" وتكتب عليه آيات قرآنية، أنظروا الرابط واقرأوا الإستفزاز وترّحموا على كرامة أمّة أنجبت في يوم من الأيام المُعتصم ومحمد الفاتح... http://www.brokennewz.com/displaystory.asp..._1250islmaflush
  16. أخشى بأن البعض يقوم بذلك عن قصد وتشويهاً للدين، فعندما يقرأ غير المسلم خبراً مثل هذا فإنه بالتأكيد سيعمّم ويظنّ بأن كل ما يُقال عن الإعجاز العلمي في القرآن هو أكاذيب ومن إختراع مشايخ الإنترنت الذين لا يميزون بين القطب المغناطيسي والقطب الجغرافي... قد يكون هذا الأسلوب هو محاولة لتشويه الدين (والله أعلم) أو على الأقل نابع من جهل منقطع النظير يجب أن يتم ردعه ممن يملكون بعض المعرفة (ألم ندرس في المدارس الإبتدائيّة بأن القطب المغناطيسي هو غير القطب الجغرافي!، ألم يقوم المدرسون بوضع إبرة البوصلة وييبينون لنا بأنّ الأبرة لا تشير إلى الشمال الجغرافي بل إلى الشمال المغناطيسي!).
  17. أولاً ديننا العظيم لا يحتاج إلى عالم ليزيد قناعتنا بعظمته وأن القرآن الكريم هو كتاب الله، حقيقة يجب أن نعيها مع أننا نفرح عندما نسمع خبر هنا وهناك يؤكد دخول الناس في دين الله عن قناعة... فالحمدلله. أما قضية إنقلاب الأرض وكما يفسره المقال فهو تفسير غير صحيح، والمسؤول عن طلوع الشمس الظاهري من الشرق هو دوران الأرض حول قطبيها الجغرافيين وليس قطبيها المغناطيسين، والأقطاب المغناطسية لا تتطابق مع الأقطاب الجغرافية من حيث المحور بل هي في تحرك دائم (وأورد المقال ذلك بشكل صحيح)، وقد كانت الأقطاب المغناطسية للكرة الأرضية منقلبة منذ ملايين السنين ولم يؤثر ذلك على قضية "طلوع الشمس" ولم تطلع الشمس حينها من الغرب. وأقصى تأثير لإنعكاس الأقطاب المغناطيسية (أو حتى تسطحها بحيث يوازي محورها خط الأستواء) هو إختفاء الشفق الشمالي aurora borealis. وأيضاً هناك مغالطات علمية في المقال من حيث تفسير سبب دوران الأرض حول محورها (وعزو ذلك إلى المجال المغناطيسي)، وكذلك مغالطة بأن المجال المغناطيس سببه الشمس (مع أن سببه هو الكرة المعدنية المنصهرة في قلب الكرة الأرضية).... قد تكون قصة ذلك العالم صحيحة (وأنه عالم ولديه نظرية جديدة لم يفسرها المقال) ولكنها بالتأكيد شوّهت من قبل المواقع العربيّة حبّاً في الإثارة أو "إيجاد دليل على صدق ديننا"، أستغفر الله من ذلك الجهل.
  18. رسالة junk وصلتني بالإيميل ولكنه معبّرة بعض الشيء عن واقع أمم هذه الأرض، أحببت أن أشارككم بها: A World-Wide survey was conducted by the UN.  The only question was: "Would you please give your honest opinion about solutions to the food shortage in the rest of the world ?" The survey was a huge failure due to the following: In Africa they didn't know what food means. In East Europe they didn't know what honest means. In Western Europe they didin't know what shortage means. In China they didn't know what opinion means. In the Middle East they didn't know what solution means. In South America they didn't know what please means. In the US they didn't know what the rest of the world means.
  19. كلام دقيق وصحيح، والحقيقة جميع برامج مكافحة الفيروسات تعتمد بالإضافة إلى طريقة المكافحة التقليدية (التي تعتمد على قاعدة بيانات) الطريقة الذكية وهي محاولة تحليل سلوك البرنامج أو كوده وإستنباط إن كان برنامجاً فعلياً أم أنه برنامج تخريبي (فيروس)، ولكن هذه البرامج عادة لا تقوم بالتعامل مع هذه البرامج "المحتمل أن تكون فيروسات" بطريقة عدائية تامّة (حذفها أو غير ذلك) وبدلاً من ذلك تعطي المستخدم البشري حق تقرير القرار النهائي بعد تزويده بإسم البرنامج وسلوكه وماذا حاول أن يفعل. جربت معظم برامج مكافحة الفيروسات ولم ينل إحترامي سوى النورتن ومكافي، أمّا النورتن فأنا لا أستخدمه لكونه ثقيل الظل على الجهاز ويأكل نصف قدرته، أما المكافي فهو بالفعل برنامج أكثر من رائع (وأظن بأن دعم مايكروسوفت له هو السبب، بالطبع قبل أن تقوم مايكروسوفت برفسه وتطليقه).
  20. لم أكتب البرنامج من جديد بل قمت بالتعديل على كودك وذلك للأسباب التالية: 1) إمكانية تعديل برنامجك بصورة تفي بالغرض. 2) يتطلب كتابة البرنامج إعادة تصميم الداتابيز لأنك لم تبنيها بطريقة علمية على الأطلاق (فقط أورد لك أحد المآخذ، فنحن عندما نبني قاعدة بيانات فيها أكثر من جدول مع علاقات بين الجداول فإننا نقوم بذلك أساساً حتى نخفف من حجم القاعدة وعدم إضافة معلومات لا فائدة منها ومكررة في أكثر من record، وأنت قمت بعمل جدولين ومع ذلك أضفت عمود في جدول الموظفين برقم وأسم القسم، لماذا؟ يجب أن لا تكتب أسم القسم لأنه موجود عندك في الجدول الثاني). لقد عملت بعض التعديلات على كود برنامجك وهي تحقق ما طلبته (مع أن الطريقة المثلى تتم بصورة مغايرة لما قمت به من تعديلات، ولكن للأسف لا يمكن إتباع تلك الطريقة المثلى ما لم يتم إعادة تشكيل القاعدة والبرنامج من جديد). ملاحظة هامة، لقد قمت حضرتك بجعل Emp_num رقماً أساساً، ولكنك وفي الوقت نفسه لم تكتب كوداً يتأكد من أن المستخدم قد قام بكتابة ذلك الرقم في صندوق "رقم العامل"، وكذلك يجب أن تتأكد بأن الرقم الذي أدخله المستخدم ليس مكرراً وتمّ أعطاءه سابقاً لموظف آخر (لسببين، أولاً لأن ذلك الرقم هو رقم أساس في الداتابيز، وسبب منطقي آخر وهو أنه لا يجب أن يشترك أكثر من موظف في نفس الرقم) أليس كذلك؟... وفي هذه الحالة فالطريقة المثلى هي أن لا نعطي المستخدم الحرية في كتابة ذلك الرقم ولكن يجب أن يقوم برنامجنا بعمله آلياً (مثلاً بعمل loop في جدول الموظفين وأختيار رقماً لا يوجد لعامل آخر)... أمّا إن أصريّت على أعطاء المستخدم الحق في كتابة الرقم بنفسه فيجب عليك التأكد من أمرين: 1) قام المستخدم بإدخال رقم (أي لم يترك صندوق النص فارغاً أو يكتب فيه حرفاً بدلاً من الرقم). 2) يجب أن تعمل loop في جدول الموظفين وتتأكد بأن الرقم الذي أدخله المستخدم ليس معطى لشخص آخر من قبل. والطريقة الثانية قمت بعملها لك (أنظر في كود البرنامج لترى كيف يتم ذلك الأمر البسيط، ويمكنك تعديله بشكل أفضل على ما أظن). وما ينطبق على جدول الموظفين ينطبق على جدول الأقسام، هناك يجب أن تتأكد من أمرين، المستخدم لم يقم بإعطاء رقماً معطي لقسم من الأقسام في السابق، وكذلك يجب أن تتأكد بأن المستخدم قام بكتابة أسم قسم غير موجود عندنا من قبل... لقد قمت بكتابة الكود الذي يتأكد من الرقم وتركت لك الكود الذي يتأكد من أسم القسم (تستطيع كتابة بالتأكيد عن طريق قراءة كود التأكد من الرقم، تحتاج فقط لنسخ الكود وإضافة تعديل على موقع ال loop بحيث يجري في عمود الأسماء بدلاً من عمود الأرقام). وأمر آخر (وقد تركته لك للقيام به)، عندما يقوم المستخدم بإضافة قسم من الأقسام فيجب عليك في هذه الحالة وعند رجوع المستخدم إلى فورم الموظفين بأن تضيف القسم الجديد الى الكمبوبوكس (يتم ذلك بطرق عدة، أسهلها إعادة تحديث الداتاسيت). الملف المعدل مرفق، أرجو لك التوفيق EMP.zip
  21. برنامج الفيجوال ستديو عندي على جهازي الآخر، للأسف لا يمكنني كتابة الكود لك كاملاً فكما هو ملاحظ فإنك لا زلت تستخدم الداتاسيت مع inner join وهذا هو سبب الخطأ (كما أتوقع فأنا لم أفتح كود برنامجك)... على كل حال أخي كفاح، سأكتب لك البرنامج كاملاً في الغد ولكن عليك أن تختار بين أمرين: 1) أن أقوم بعمل البرنامج من جديد مع تعديل الكثير من الكود لأنني وكما أتوقع هناك الكثير من الأخطاء فيه (ولكن الكثير من التعديل قد لا يكون مفهوماً بالنسبة لك). 2) أن أقوم فقط بعمل ما تريده (إضافة الرقم الأساس) وهو يتطلب مني كتابة كود يعمل معك ولكن بالتأكيد سيكون كوداً غير محترم من الناحية البرمجية. أعطني رأيك.
  22. مشتاقين لك يا كفاح ولبقية الأخوة، والمعذرة فأنا عن تغيبي القصري عن المنتدى بسبب مشاغل العمل والأسرة. كما قلت لك أخي كفاح، قم فقط بعمل داتاسيت لجدول ال department، ولإضافة أسماء الأقسام إلى الكمبوبوكس قم بعمل loop في الداتاسيت بالطريقة التالية (مفترضاً بأن أسماء الأقسام هي في العمود المسمى D وأالرقم الأساسي هو في العمود ID). For X as integer = 0 To dataset.tables("department").rows.count -1 cobmobox1.items.add(dataset.tables("department").rows(x).item("D") next وعندما يقوم المستخدم بإختيار item معين من ال combobox فإنك يجب أن تظهر الرقم الأساس في ال textbox بالطريقة التالية: textbox.text=cstr(dataset.tables("department").rows(combobox.selectedindex).item("ID"))أرجو بأن لا أكون قد أخطأت بال spelling لأنني أكتب الكود من الذاكرة... وهذا بالطبع حل من مجموعة حلول كثيرة يمكنك القيام بها.
  23. سؤالك أخي الكريم عام جداً، وبالرغم من أنني لست متخصصاً وضحل المعرفة بهذا الأمر ولكن سأدلي بدلوي بحدود معرفتي: نظرياً ومن الناحية العلمية لا يمكنك تحسين الصورة على الأطلاق، الصورة عندما ألتقطت رقمياً تكون على شكل نقاط لا يمكن لأي برنامج مهما كان تحسين الخلل فيها إلا بحدود تعديل هذه النقاط، فمثلاً لو أخذنا قضية ال red eye قد تلاحظ بأن الكثير من البرامج الضخمة قد طرحت حلاً لها وهو من الناحية النظرية مفهوم (يقومون بأخذ مقاربة لل RGB للون الأحمر للعين وإستبداله حيثما كان في الصورة بلون يقارب لون العيون الطبيعية)، وحتى هذه القضية السهلة جداً من الناحية النظرية لم ينجح أي برنامج في حلها، فذلك اللون قد يكون في الصورة في موقع غير موقع العينين وبذلك يكون الحل في أخفاء أحمرار العين ولكن على حساب بقية تناسق الصورة. محصلة القول، الصورة (وما ينطبق عليها ينطبق على الفيديو لكونه صوراً متعاقبة) لا يمكن تحسينها لتكون أكثر قرباً لطبيعة الجسم الذي أخذت له على الأطلاق، قد مثلاً نستطيع أن نعمل برنامجاً يقوم بفحص الصورة فإن كانت قاتمة جداً يحاول أن يظهرها بعض تفاصيلها بإستبدال اللون الأقل إسوداداً بلون أقرب إلى الأبيض ولكن هذا الحل بالطبع لا يؤدي إلى أن تكون الصورة أقرب من الواقع من الصورة التي تم تعديلها.... محصلة القول، لا يوجد برنامج يقوم بحل مرضي دون تدخل بشري مباشر (أي بتعديل الصورة يدوياً من قبل مستخدم ماهر للبرنامج يفحص الصورة يدوياً ويقرر بناء على ذلك ما هو التعديل الذي يجب أن يتم، وهذا بالطبع يعتمد من جزء إلى جزء في الصورة الواحدة، وكذلك يختلف من صورة لصورة، قد يقوم المستخدم في مرحلة معينة بإستخدام أمر خاص من برنامج متخصص يقوم بتسهيل مجموعة من الحركات الروتينية لا اكثر)... لذلك قد نستطيع تحسين صورة ولكن لا غنى لنا عن التدخل البشري في إتخاذ القرار النهائي. قد تشاهد فيلماً سينمائياً تم تطويره وتحسينه عن نسخة أقدم، ولكن بالتأكيد تم الأمر بتدخل بشري في كل لقطة من لقطاته ولكن بالطبع بالإستعانة ببرامج مهمتها فقط أتممة عمل روتيني معين لا أكثر ولا أقل (تماماً مثل عمل ال macro في برامج الأوفيس، يقوم بعملية إختصار لخطوات طويلة تستغرق عادة فترة طويلة جداً إن أردت القيام بها يدويّاً، تلاحظ بأن الماكرو لا بد له من خطوات يقررها المستخدم البشري ولا يمكن للبرنامج بأن يفهم ما تريد ان تعمله من تلقاء نفسه).
  24. كيف حالك يا كفاح؟ هل ذلك لا زال صعباً عليك؟، إذاً ماذا كنت تفعل في السنتين الماضيتين :lol: للأسف لم أقرأ كود برنامجك ولكنني فتحت البرنامج، برنامجك بسيط ولا يجب أن تكون تلك المشكلة صعبة بالنسبة لشخص مثلك يا عزيزي، وبالتأكيد فإن الأمر لا يحتاج إلى عرضه على مجلس الأمن (مايكروسوفت) كما أقترح اياس العزيز. سأعطيك حل (من مجموعة حلول ممكنة طرح بعضها الأخوة من قبل)، قم أولاً بعمل داتاسيت لجدول ال department وقم عن طريق loop بوضع الأسماء في ال cobmobox، وحينما يختار المستخدم أحد الأقسام فتقوم بأخذ رقم الأيندكس index لل combobox وإختيار العمود الموازي لذلك الرقم (الذي يكون فيه الرقم الأساسي) لعرضه في ال textbox... هل ذلك صعب؟ لقد قمت بفتح الداتابيز، أنا لا أعلم لماذا عملت join في الداتابيز، نحن لا نعمل ذلك إلا لأسباب تستدعي ذلك، مثل: 1. أن يكون برنامجاً هو واجهة فقط (أي أنه واجهة لتبسيط العمل وأدخال البيانات وفي هذه الحالة يفضل إستخدام ال access مباشرة بالإستعانة ب VBA)، ويكون تعامل المستخدم بشكل مباشر مع الداتابيز. 2. أن يكون برنامجاً يعرض الجدولين في فورم واحد، وهو ما لم ألاحظه في برنامجك.
  25. Linux vs. Windows

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