0 امتیاز
سلام من میخام برنامه ای بسازم که اخر کار امتیازات را جمع بندی کنم حالا چطور اینکارو بکنم و اخر کار اون امتیاز رو نشون بدم و هر امتیازی قبل از حذف ذخیره بشه که دفعه بعدی استفاده بشه ممنونم
بسته شده

1 پاسخ

+1 امتیاز
 
بهترین پاسخ

سلام

دوست عزیز

2تا از متداولترین راهها رو میگم

ابتدا باید توی اولین فرم یه متغییر ایجاد کنی و مقدارش  رو برابر صفر قرار بدی و تو فرمهای بعدی نباید بهش مقدار بدی بعد امتیاز گرفته شده اعم از صفر یا 1 رو به فرم بعدی پاس میدی و در هر فرمی با متغییر جدید این امتیاز رو میگیری و اینو جمبنید میکنی اخرش امتیاز رو توی تکست یا دیتابیس ذخیر میکنی و نمایش میدی -این1

این فرم1 هست
 int m = 0;

این فرمهای بعدی
int m;
        public Form2(int n)
        {
            InitializeComponent();
            m = n;
        }

البته پروژه ای تو همین سطح برات ارسال میکنم همینجا

http://s8.picofile.com/file/8333354218/Quiz.rar.html

 

و اما راه دوم........من توی یکی از پروژه هام از این روش استفاده کردم ازمون 4 گزینه ای

شما امتیاز هرصفحه رو ثبت میکنی بعد در پایان توی دیتاگرید یا هرجایی خواستید نشون میدید و اینکه میخاایید قبل از حذف نشون بدید یه راه مناسب برات نشون میدم

روی این کد خیلی کار کردم 

وقتی امتیازات رو توی دیتابیس ذخیره کردی این کد همه ستون رو برات جمع میزنه

 private void CalcScore()
        {

            int[] columnData = new int[dataGridView1.Rows.Count];
            columnData = (from DataGridViewRow row in dataGridView1.Rows
                          where row.Cells[1].FormattedValue.ToString() != string.Empty
                          select Convert.ToInt32(row.Cells[1].FormattedValue)).ToArray();
            lblsum.Text = columnData.Sum().ToString();
        }

 

و بعد اگه خواستی یه تیکه یعنی همین کد رو پاک کنی منظورم امتیازه ها   قبل از حذف ذخیره میکنه

 

 string tim = DateTime.Now.ToString("yyyy ddd d MMM  HH:mm");
برای نمایش امتیازات حذف شد این تاریخ کاربرد داره 
            if (MessageBox.Show("آیا میخاهید امتیازات پاک شود؟", "Warning", MessageBoxButtons.YesNo) == DialogResult.Yes)
            {
                try
                {
                    using (StreamWriter Sw=new StreamWriter("Score1.txt",true))
                    {
                        try
                        {
                            Sw.WriteLine("Your Score: "+lblsum.Text+" in"+"  "+tim) ;
                            Sw.WriteLine();
                        }
                        finally
                        {

                            Sw.Flush();
                            Sw.Dispose();
                            Sw.Close();
                        }
                       
                    }
                        اینجا هم بعد از ذخیره امتیازات حذف میشن
                    
                    /// int DLT = Convert.ToInt16(dataGridView1.CurrentRow.Cells[1].Value.ToString());
                    OleDbConnection cnn = new OleDbConnection(cnnclss.conection);
                    OleDbCommand cmd = new OleDbCommand("Delete  From tblanswer", cnn);

                    cnn.Open();

                    cmd.ExecuteNonQuery();
                    cnn.Close();
                    showdataGrid();
                    CalcScore();

                }
                catch
                {


                }

                finally
                {
                    //  MessageBox.Show("Success");
                    ToolTip toool = new ToolTip();
                    toool.Show("امتیاز شما صفر شد", panel1, 2500);
                }

            }
            

           
           
                  
تست کردم ممنون
توسط (171 امتیاز) 1 10
سوال جدید

2,337 سوال

2,871 پاسخ

3,725 دیدگاه

3,921 کاربر

دسته بندی ها

...