⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 frmview.cs

📁 我自己开发的双色球预测软件
💻 CS
字号:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

namespace cpzh
{
    public partial class frmView : Form
    {
        int resultNum;              //当前结果数组的数据个数
        int showNum;                //每页显示记录条数
        int startNum;               //当前页显示数据索引的起始值
        int endNum;                 //当前页显示数据索引的结束值
        int[][] finallyResult;     //当前数组
        int TOTAL;                  //代表33个选项
        struct WinResult                 //预测结果中奖情况结构
        {
            public int FirstNum;                //一等奖注数
            public int SecondNum;               //二等奖注数
            public int ThirdNum;                //三等奖注数 3000
            public int FourNum;                 //四等奖注数 200 
            public int FifthNum;                //五等奖注数 10
            public int SixthNum;                //六等奖注数 5
            public int SmallTotalMoney;         //三、四、五、六等奖的合计金额假设篮球没选中
            public int BigTotalMoney;           //三、四、五、六等奖的合计金额假设篮球选中了
        }

        Groups groups;              //组对象
        public frmView()
        {
            resultNum = 0;
            showNum = 1000;
            startNum = 0;
            endNum = showNum;
            TOTAL=33;
            groups =  new Groups();
            InitializeComponent();
        }

        private void frmView_Load(object sender, EventArgs e)
        {
            finallyResult=groups.FinallyResult;
            resultNum = finallyResult.Length;
            EvaluateLB(startNum , showNum, resultNum);
            groups.FillCB(cbSingleDel, TOTAL);
            groups.FillCB(cbSingleFilter ,TOTAL);
            groups.FillListView(finallyResult,lvMain,showNum);
        }


        #region//给标签赋值
        /// <summary>
        /// 给标签赋值
        /// </summary>
        /// <param name="start">起始位置</param>
        /// <param name="length">显示数量</param>
        /// <param name="total">数组元素总数</param>
        private void EvaluateLB(int start, int length, int total)
        {
            lbStart.Text  = Convert.ToString(start);
            lbEnd.Text  = Convert.ToString(start + length);
            lbTotal.Text  = Convert.ToString(total);
        }
        #endregion

        /// <summary>
        /// 初始化标签
        /// </summary>
        private void initLb()
        {
            resultNum = 0;
            showNum = 1000;
            startNum = 0;
            EvaluateLB(startNum, showNum, resultNum);
        }

        private void btnNext_Click(object sender, EventArgs e)
        {
            endNum = startNum + showNum;

            if (endNum >= resultNum)
            {
                MessageBox.Show("已到最后一条记录位置!");
                btnNext.Enabled = false;
                return;
            }
            startNum = startNum + showNum;
            if ((resultNum - endNum) <= showNum)
            {
                btnPreviou.Enabled = false;
                EvaluateLB(startNum, showNum - (resultNum - endNum), resultNum);
            }
            else
            {
                EvaluateLB(startNum, showNum, resultNum);
            }
            groups.FillListView(finallyResult, lvMain, startNum, showNum);

            btnPreviou.Enabled = true;
        }

        private void btnPreviou_Click(object sender, EventArgs e)
        {
            if (startNum == 0)
            {
                MessageBox.Show("已到第一条记录位置!");
                btnPreviou.Enabled = false;
                return;
            }
            if (startNum <= showNum)
            {
                startNum = showNum;
                btnPreviou.Enabled = false;
            }
            startNum = startNum - showNum;
            EvaluateLB(startNum, showNum, resultNum);
            groups.FillListView(finallyResult, lvMain, startNum, showNum);

            btnNext.Enabled = true;
        }

        private void btnSingleDel_Click(object sender, EventArgs e)
        {
            int singleData;     //删除所有包含此数据的项
            int[][] temp;       //临时数组

            singleData = int .Parse (cbSingleDel.SelectedIndex.ToString()) +1;
            
            temp=groups.SingleDel(finallyResult, singleData);
            finallyResult = null;
            finallyResult = new int[temp.Length][];
            finallyResult = temp;

            initLb();
            resultNum = finallyResult.Length;
            EvaluateLB(startNum, showNum, resultNum);
            groups.FillListView(finallyResult, lvMain, showNum);
        }

        private void btnSingleFilter_Click(object sender, EventArgs e)
        {
            int singleData;     //删除所有不包含此数据的项
            int[][] temp;       //临时数组

            singleData = int.Parse(cbSingleFilter.SelectedIndex.ToString()) + 1;

            temp = groups.SingleFilter(finallyResult, singleData);
            finallyResult = null;
            finallyResult = new int[temp.Length][];
            finallyResult = temp;

            initLb();
            resultNum = finallyResult.Length;
            EvaluateLB(startNum, showNum, resultNum);
            groups.FillListView(finallyResult, lvMain, showNum);
        }

        private void btnMuchFilter_Click(object sender, EventArgs e)
        {
            //int singleData;     //删除所有不包含此数据的项
            int[][] temp;       //临时数组
            int[] iFilter;       //存放需过滤的数据
            string strTemp;     //临时字符串
            char[] charSeparators = new char[] { ',' };
            int[] temp1;
            string[] sFilter;
            int seedNum;            //种子数

            //singleData = int.Parse(cbSingleFilter.SelectedIndex.ToString()) + 1;
            temp1 = new int[3];
            temp1[0] = 1;
            temp1[1] = 3;
            temp1[2] = 2;

            seedNum = 0;
            //获得筛选数组
            strTemp=tbMuchFilterNo.Text.ToString();
            sFilter=strTemp.Split(charSeparators, StringSplitOptions.RemoveEmptyEntries);

            if (sFilter.Length <1)
            {
                MessageBox.Show("没有填写筛选数据!");
                return;
            }
            //把筛选数据从string数组导入到int数组
            iFilter = new int[sFilter.Length];
            for (int i = 0; i < sFilter.Length; i++)
            {
                iFilter[i] = int.Parse(sFilter[i].ToString());
            }
            
            seedNum = int.Parse(cbFilterSeed.Text.ToString());
            if (seedNum >= 6)
            {
                MessageBox.Show("选择的种子数不合理!");
                return;
            }

            temp = groups.MuchFilter(finallyResult,iFilter , seedNum );
            finallyResult = null;
            finallyResult = new int[temp.Length][];
            finallyResult = temp;

            initLb();
            resultNum = finallyResult.Length;
            EvaluateLB(startNum, showNum, resultNum);
            groups.FillListView(finallyResult, lvMain, showNum);
        }

        private void tbMuchFilterNo_Leave(object sender, EventArgs e)
        {
            string strTemp;
            string[] sFilter;
            char[] charSeparators;
            int maxSeed;            //最大种子数;

            maxSeed = 6;
            charSeparators = new char[] { ','};
            //获得筛选数组
            strTemp = tbMuchFilterNo.Text.ToString();
            sFilter = strTemp.Split(charSeparators, StringSplitOptions.RemoveEmptyEntries);
            if (sFilter.Length > 0 && sFilter.Length < 6)
            {
                groups.FillCB(cbFilterSeed, sFilter.Length);
            }
            else
            {
                if (sFilter.Length > 6)
                {
                    groups.FillCB(cbFilterSeed, maxSeed -1);
                }
            }
        }

        private void tbMuchDelNo_Leave(object sender, EventArgs e)
        {
            string strTemp;
            string[] sDel;
            char[] charSeparators;
            int maxSeed;            //最大种子数;

            maxSeed = 6;
            charSeparators = new char[] { ',' };
            //获得数组
            strTemp = tbMuchDelNo.Text.ToString();
            sDel = strTemp.Split(charSeparators, StringSplitOptions.RemoveEmptyEntries);
            if (sDel.Length > 0 && sDel.Length < 6)
            {
                groups.FillCB(cbDelSeed, sDel.Length);
            }
            else
            {
                if (sDel.Length > 6)
                {
                    groups.FillCB(cbDelSeed, maxSeed);
                }
            }
        }

        private void btnMuchDel_Click(object sender, EventArgs e)
        {
            int[][] temp;                   //临时数组
            int[] iDel;                     //存放需删除的数据
            string strTemp;                 //临时字符串
            char[] charSeparators ;
            string[] sDel;
            int seedNum;                    //种子数

            seedNum = 0;
            charSeparators = new char[] { ',' };
            //获得删除数组
            strTemp =tbMuchDelNo.Text.ToString();
            sDel = strTemp.Split(charSeparators, StringSplitOptions.RemoveEmptyEntries);

            if (sDel.Length < 1)
            {
                MessageBox.Show("没有填写过滤数据!");
                return;
            }
            //把删除数据从string数组导入到int数组
            iDel = new int[sDel.Length];
            for (int i = 0; i < sDel.Length; i++)
            {
                iDel[i] = int.Parse(sDel[i].ToString());
            }

            seedNum = int.Parse(cbDelSeed.Text.ToString());
            if (seedNum >= 6)
            {
                MessageBox.Show("选择的种子数不合理!");
                return;
            }

            temp = groups.MuchDel(finallyResult, iDel, seedNum);
            finallyResult = null;
            finallyResult = new int[temp.Length][];
            finallyResult = temp;

            initLb();
            resultNum = finallyResult.Length;
            EvaluateLB(startNum, showNum, resultNum);
            groups.FillListView(finallyResult, lvMain, showNum);
        }

        private void btnSubtract_Click(object sender, EventArgs e)
        {
            int[][] temp;
            int iStart;
            int iEnd;

            iStart = int.Parse(txtStart.Text);
            iEnd = int.Parse(txtEnd.Text);
            if (iStart < 5 || iEnd < iStart )
            {
                MessageBox.Show("输入范围不合法,请重新输入!");
                return;
            }
            temp = groups.SubtractFilter (finallyResult ,iStart ,iEnd );
            finallyResult = null;
            finallyResult = new int[temp.Length][];
            finallyResult = temp;

            initLb();
            resultNum = finallyResult.Length;
            EvaluateLB(startNum, showNum, resultNum);
            groups.FillListView(finallyResult, lvMain, showNum);
        }

        private void btnEncash_Click(object sender, EventArgs e)
        {
            string[] temp = new string[6];
            int[] awardNo=new int[6];
            Groups.WinResult winResult = new Groups.WinResult();

            if (mtbAwardNo.Text.Trim().Length < 6)
            {
                MessageBox.Show("请输入6组有效数据!");
                return;
            }
            temp = mtbAwardNo.Text.Trim().Split('-');
            for (int i = 0; i < temp.Length; i++)
            {
                awardNo[i] = int.Parse(temp[i].ToString());
            }
            winResult =groups.GetWinResult(finallyResult, awardNo);
            MessageBox.Show("篮球选中情况下\n中一等奖注数:" + winResult .FirstNum +
                    "\n中二等奖注数:"+ winResult .SecondNum +
                    "\n中三等奖注数:"+winResult .ThirdNum +
                    "\n中四等奖注数:"+winResult .FourNum +
                    "\n中五等奖注数:"+winResult .FifthNum +
                    "\n中六等奖注数:"+winResult .SixthNum +
                    "\n总奖金:" + winResult .BigTotalMoney +
                    "\n\n未选中篮球情况下" +
                    "\n总奖金:"+winResult.SmallTotalMoney,"中奖结果" );
            initLb();
            finallyResult = null;
            resultNum=groups.FinallyResult .Length;
            finallyResult =new int [ resultNum][];
            finallyResult = groups.FinallyResult;
            EvaluateLB(startNum, showNum, resultNum);
            groups.FillListView(finallyResult, lvMain, showNum);
        }


    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -