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

مشكلة بالكود في جملة IF

بدأه hero for eve في 5 يوليو 2011 · 13 رد · 564 مشاهدة · في Microsoft Visual C#.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ورحمة الله وبركاته كيفكم اخواني ان شاء الله تمام وبصحة

انا سويت الكود على اساس اذا كان الاسم والباسورد صحيحين

على طول يظهر الفورم التاني

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

        if (textBox1.Text  = "abady" && textBox2.Text = 221411 )
            {
                 Button1.Created = true  Show.form2 (); 
            }


        else 
            {
            MsgBox("تاكد من كلمة المرور");
            }
#2

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

فحص المساواة في ال C# يكون كالتالي ( == ) و ليس مثل الفيجوال بيسك ( = ) و يفضل وضع كل شرط مساواة ضمن أقواس هلالية ()

#3
if (int .Parse(textBox1.Text)  = "abady" && int .Parse (textBox2.Text) =221411);
            {
                 button1_Click == true  (Show.form2) (); 
            }


            else
            {
            MsgBox = ("تاكد من كلمة المرور");
            }

يعطيني خطئين وتحذير

Warning 1 Possible mistaken empty statement C:\Documents and Settings\XP\My Documents\Visual Studio 2008\Projects\WindowsFormsApplication21\WindowsFormsApplication21\Form1.cs 21 93 WindowsFormsApplication21

Error 2 Invalid expression term 'else' C:\Documents and Settings\XP\My Documents\Visual Studio 2008\Projects\WindowsFormsApplication21\WindowsFormsApplication21\Form1.cs 27 13 WindowsFormsApplication21

Error 3 ; expected C:\Documents and Settings\XP\My Documents\Visual Studio 2008\Projects\WindowsFormsApplication21\WindowsFormsApplication21\Form1.cs 27 17 WindowsFormsApplication21

تم تعديل هذه المشاركة بواسطة hero for eve في 5 يوليو 2011 في 17:46

#4

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

اخي كودك الاول سليم عدا تبديل علامة المساواة = بـ ==

.:: Wish to become better and better ::.

#5

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

بالاضافة الى التعديلات اللي ذكروها الاخوان , امسح ; (الفاصلة المنقوطة)في نهاية السطر الاول

+

ماله داعي تستخدم int.Parse مع التيكست بوكس الاول لانه في الاساس هذه الدالة ترجع int , وانت في المقارنة تقارنه بقيمة من نوع string !!!

if (textBox1.Text  == "abady" && int .Parse (textBox2.Text) ==221411)

عفوا اخوي بس من باب النصيحة حاول تطور نفسك وتفهم ايش معنى رسائل الاخطاء اللي تظهر , عشان تعرف تحلها , واذا ما عرفت اسأل , لكن في البداية عليك ان تبذل جهد.

1

((إِنَّ اللَّهَ وَمَلائِكَتَهُ يُصَلُّونَ عَلَى النَّبِيِّ يَا أَيُّهَا الَّذِينَ آمَنُوا صَلُّوا عَلَيْهِ وَسَلِّمُوا تَسْلِيمًا))

#6

اخي سويت ==

يطلع لي خطا

Error 1 ; expected C:\Documents and Settings\XP\My Documents\Visual Studio 2008\Projects\WindowsFormsApplication21\WindowsFormsApplication21\Form1.cs 23 43 WindowsFormsApplication21

وخط احمر تحت كلمة show

تم تعديل هذه المشاركة بواسطة hero for eve في 5 يوليو 2011 في 21:03

#7

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

اخي من اين اتيت بالخاصيه Created؟!! وكل جملة لابد ان تنتهي بفاصلة منقوطة, اما بالنسبة للاجراء Show يستدعى بعد الكائن من نوع فورم وليس قبل

.:: Wish to become better and better ::.

#8

اخي جربت ان اضع

form2.show لمن تنفع

#9

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

اخي تأكد من ان form2 هو كائن من الفورم والا قم بتعريف كائن منه ومن ثم استدعي الاجراء

.:: Wish to become better and better ::.

#10

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

تم عمل نفس المطلوب وإضافته في المرفقات

الرجاء الإطلاع على الملف المرفق

Form1.zip

#11

مثل مقال الأخ hussain alqarni

تم تعديل هذه المشاركة بواسطة سي شربة في 6 يوليو 2011 في 23:34

vr7y9y10.jpg
#12

اخي المجلد لا يفتح معي

280591667.jpg

#13

اخي العزيز ::

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

if (textBox1.Text == "abady" && int.Parse(textBox2.Text) == 1111)
            {
                //  عرض رسالة ان المدخلات صحيحة 
                MessageBox.Show("صحيح");

                //  اظهار النموذج الثاني 
                Form2 myForm2 = new Form2();
                myForm2.Show();


            }

            else
            {
                MessageBox.Show("خطأ");
            }

الاخطاء التي وقعت بها في محاولتك ولم ينتبه الاخوة لواحدة مهمه منها ::

1- استخدامك للمعامل = في عملية المقارنة وهذا غير صحيح .. في عملية المقارنة بين قيمة واخرى استخدم المعامل == وهو مايميز اللقات التي تسمى C based اي انها تكون لنفس الشكل الخاص بلغة السي .. لكن لو استخدمت المعامل = فقط .. هذا يعني انك تقوم باسناد القيمة التي باليسار الى القيمة داخل صندوق النص ثم تسأله هل هذا صحيح ؟ لكي يرجع لك True في كل تنفيذ .

2- استخدامك لصندوق النص الثاني مباشرة .. اذا اردت ان تستخدم صندوق النص وتختبر محتواه وهو رقم .. يجب ان تضع الصنف int لكي يختبر ذلك عن طريق الدالة Parse() هي التي ستكشف وتحول المحتوى الى رقم لكي يقارن مع 1111 ...

3- الشئ الذي اعتقد لم ينتبه له الاخوان .. استخدامك لعملية اظهار النموذج بالشكل المباشر كما في فيجول بيسك دوت نت .. هذا غير صحيح .. لايمكنك ان تستدعي دالة الاظهار مباشرة .. يجب ان تعرف متغير تابع للنموذج الثاني ثم تستدعي دالة الاظهار كما كتبتها لك في الكود المرفق ..

4-

Button1.Created = true

لم اعرف لماذا تكتبها اصلا ؟؟ هل لك غاية فيها ؟

5- بالنسبة لعدم قدرتك على تشغيل الملف المرفق من الاخ .. الواضح من الصورة السابقة ان الكود الذي ارفقه الاخ مصمم بالدوت نت4 .. وانت لديك الاصدار الاقدم ربما 3.5 القادم مع 2008 او 3 او 2 القادم مع 2005 ... لذلك يجب ان تقوم باستيراد النماذج كل على حدة لكي تستطيع التنفيذ ..

6- طريقة كتابتك بصورة عامة هي طريقة كتابة المعتادين على الفيجول بيسك دوت نت .. وهذا سيصعب الامور عليك .. يجب ان تتعود اكثر على السي شارب .

ارجو ان تكون مشاركتي قد خدمتك ..

تحياتي العطرة ..

تم تعديل هذه المشاركة بواسطة سنان محمد صالح في 7 يوليو 2011 في 13:24

1

يَارَبُ إِن ضَاقَت قُلُوُب الْنَّاسٍ عَنْ مّافِي .. مِنْ خَيْرٍٍ فَعَفْوكَ لَا يَضِيْقْ ..

#14

شكرا اخي سنان

ويعطيك العافية ربي على النصائح الي قدمتها

وشكرا لتوضيحك لي اكثر من نقطة بالمشكلة

وجااااري التجربة

لا اعتقد ان الشكر سيوفيك

جعله الله بميزان حسناتك

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

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

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

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

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