代码封装

窗体1

窗体代码:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.IO;

namespace shuxuefudao
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        string path = "E:\rtf";
        public static int Count = 0;
        public static int zhengque = 0;
        public static int lefttime;
        public static int time;
        public static int sum;
        int i = 1;
        Class1 mm = new Class1();
        private void Form1_Load(object sender, EventArgs e)
        {
            if (File.Exists(path))
            {
                this.richTextBox1.LoadFile(path, RichTextBoxStreamType.RichText);
                open.Enabled = false;
            }
            save.Enabled = false;
        }
        private void open_Click(object sender, EventArgs e) //打开文件的方法
        {
            OpenFileDialog TxTOpenDialog = new OpenFileDialog();
            TxTOpenDialog.Filter = "RTF文件(*.RTF)|*.RTF";
            if (TxTOpenDialog.ShowDialog() == DialogResult.OK)
            {
                path = TxTOpenDialog.FileName;
                this.richTextBox1.LoadFile(TxTOpenDialog.FileName, RichTextBoxStreamType.RichText);
                save.Enabled = false;
                open.Enabled = false;
                MessageBox.Show("读取成功", "提示信息", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
            }
        }

        private void save_Click(object sender, EventArgs e) //保存文件的方法
        {
            SaveFileDialog TxtSaveDialog = new SaveFileDialog();
            TxtSaveDialog.Filter = "RTF文件(*.RTF)|*.RTF";
            if (File.Exists(path))
            {

                this.richTextBox1.LoadFile(path, RichTextBoxStreamType.RichText);
                MessageBox.Show("保存成功", "提示信息", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);

                save.Enabled = false;
            }
            else
            {
                if (TxtSaveDialog.ShowDialog() == DialogResult.OK)
                {

                    this.richTextBox1.SaveFile(TxtSaveDialog.FileName, RichTextBoxStreamType.RichText);
                    MessageBox.Show("保存成功", "提示信息", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);

                    save.Enabled = false;
                }
            }
        }

        private void richTextBox1_TextChanged(object sender, EventArgs e)
        {
            save.Enabled = true;
            if (this.richTextBox1.Text == "" || this.richTextBox1.Text == null)
            {
                open.Enabled = true;
            }
        }
        public void shizi() //编写试题的方法
        {
                left.Text = "";
                fuhao.Text = "";
                right.Text = "";
        }
        private void open2_Click(object sender, EventArgs e) //打开试题的方法
        {
            OpenFileDialog TxTOpenDialog = new OpenFileDialog();
            TxTOpenDialog.Filter = "RTF文件(*.RTF)|*.RTF";
            if (TxTOpenDialog.ShowDialog() == DialogResult.OK)
            {
                path = TxTOpenDialog.FileName;
                this.richTextBox2.LoadFile(TxTOpenDialog.FileName, RichTextBoxStreamType.RichText);
                save.Enabled = false;
                open.Enabled = false;
                MessageBox.Show("导入成功", "提示信息", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
            }
        }

        private void daoru_Click(object sender, EventArgs e) //导入试题的方法
        {
            richTextBox2.Text = richTextBox1.Text;
        }

        private void daan1_Click(object sender, EventArgs e)
        {
            if (daan1.Text == "显示答案")
            {
                daan.PasswordChar = Convert.ToChar(0);
                daan1.Text = "隐藏答案";
            }
            else if (daan1.Text == "隐藏答案")
            {
                daan.PasswordChar = ‘.‘;
                daan1.Text = "显示答案";

            }
        }

        private void kaishi_Click(object sender, EventArgs e)
        {

            string[] ll = new string[100];
            ll = File.ReadAllLines("writer.txt");
            textBox1.Text = ll[0];

            string[] lli = new string[100];
            lli = File.ReadAllLines("writer1.txt");
            textBox2.Text = lli[0];

            string[] llp = new string[100];
            llp = File.ReadAllLines("writer2.txt");
            textBox3.Text = llp[0];

            int minute;
            try
            {
                minute = int.Parse(this.shijian.Text);
            }
            catch (System.Exception ex)
            {
                this.shijian1.Text = "输入错误";
                return;
            }
            lefttime = minute;
            this.timer1.Interval = 1000;
            this.timer1.Enabled = true;
            this.timer1.Start();

        }

        private void timer1_Tick(object sender, EventArgs e)
        {
            if (lefttime <= 0)
            {
                timer1.Enabled = false;
                MessageBox.Show("答题时间到!");
                Form2 frm2 = new Form2();
                frm2.ShowDialog();

            }
            this.shijian1.Text = "剩余时间" + lefttime.ToString() + "秒";
            lefttime--;
        }

        private void jieshu_Click(object sender, EventArgs e)
        {
            Form2 frm2 = new Form2();
            frm2.ShowDialog();
        }

        private void button1_Click(object sender, EventArgs e) //请编辑下道题的事件
        {
            Count++;
            ti.Text = Count.ToString();
            StreamWriter writer = File.AppendText("writer.txt");
           writer.WriteLine(left.Text);
            writer.Close();
            StreamWriter writer1 = File.AppendText("writer1.txt");
            writer1.WriteLine(fuhao.Text);
            writer1.Close();
            StreamWriter writer2 = File.AppendText("writer2.txt");
            writer2.WriteLine(right.Text);
            writer2.Close();
            richTextBox1.Text += left.Text + fuhao.Text + right.Text + label2.Text + "" + "\n";
            mm.m= int.Parse(left.Text);
            mm.n = int.Parse(right.Text);
            daan.Text = Convert.ToString(mm.c);
            daan.Text += sum + "\r\n";

            mm.d = Convert.ToChar(fuhao.Text);
            mm.Calue();

            //string f = fuhao.Text;
            //switch (f)
            //{
            //    case "+":
            //        sum = int.Parse(left.Text) + int.Parse(right.Text);
            //        daan.Text += sum + "\r\n";
            //        shizi();

            //        break;
            //    case "-":
            //        sum = int.Parse(left.Text) - int.Parse(right.Text);
            //        shizi();
            //        daan.Text += sum + "\r\n";
            //        break;
            //    case "×":
            //        sum = int.Parse(left.Text) * int.Parse(right.Text);
            //        shizi();
            //        daan.Text += sum + "\r\n";
            //        break;
            //    case "÷":
            //        sum = int.Parse(left.Text) / int.Parse(right.Text);
            //        shizi();
            //        daan.Text += sum + "\r\n";
            //        break;
            //    default:
            //        break;

            //}
        }
        private void textBox4_KeyDown(object sender, KeyEventArgs e)
        {

            string m = textBox2.Text;
            int result;
            switch (m)
            {
                case "+":
                    sum = int.Parse(textBox1.Text) + int.Parse(textBox3.Text);

                    break;
                case "-":
                    sum = int.Parse(textBox1.Text) - int.Parse(textBox3.Text);
                    break;
                case "*":
                    sum = int.Parse(textBox1.Text) * int.Parse(textBox3.Text);
                    break;
                case "/":
                    sum = int.Parse(textBox1.Text) / int.Parse(textBox3.Text);
                    break;
                default:
                    break;
            }
            if (e.KeyCode == Keys.Enter)
            {

                if (int.TryParse(textBox4.Text, out result) == false)
                {
                    MessageBox.Show("请输入数字");

                }
                if (textBox4.Text == sum.ToString())
                {

                    MessageBox.Show("回答正确");
                    zhengque++;

                }
                else
                {

                    MessageBox.Show("回答错误");
                }

                textBox4.Clear();

                string[] ll = new string[100];
                ll = File.ReadAllLines("writer.txt");
                textBox1.Text = ll[i];
                string[] lli = new string[100];
                lli = File.ReadAllLines("writer1.txt");
                textBox2.Text = lli[i];
                string[] llp = new string[100];
                llp = File.ReadAllLines("writer2.txt");
                textBox3.Text = llp[i];
                i++;

            }
        }

        private void button2_Click(object sender, EventArgs e)
        {
            File.WriteAllText("writer.txt", string.Empty);
            File.WriteAllText("writer1.txt", string.Empty);
            File.WriteAllText("writer2.txt", string.Empty);
        }

    }
}

  封装代码:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace shuxuefudao
{
    class Class1
    {
       public string a="";
       public string b="";
       public char d;
       public int m=0;
       public int n = 0;
       public int c = 0;
       public void Calue()
        {
            if(d==‘+‘)
            {
                 c=m+n;
                 a = "";
                 b = "";

            }
            if (d == ‘-‘)
            {
               c= m -  n ;
               a = "";
               b = "";

            }
            if (d == ‘*‘)
            {
              c = m * n;
              a = "";
              b = "";
                }
           if (d == ‘/‘)
            {
               c =m / n;
               a = "";
               b = "";

               }
         }

 }



}


				
时间: 2024-12-24 00:08:35

代码封装的相关文章

MVP+Dagger2+Rxjava+Retrofit+GreenDao 开发的小应用,包含新闻、图片、视频3个大模块,代码封装良好

练习MVP架构开发的App,算是对自己学过的知识做一个总结,做了有一段时间,界面还算挺多的,代码量还是有的,里面做了大量封装,整体代码整理得很干净,这个我已经尽力整理了.不管是文件(java.xml.资源文件)命名,还是布局设计尽量简单简洁,我对自己写代码的规范还是有信心的- -.代码不会写的很复杂,整个代码结构有很高的统一度,结构也比较简单清晰,方便理解.里面做了大量的封装,包括基类的构建和工具类的封装,再配合Dagger2的使用可以极大地减轻V层(Activity和Fragment)的代码,

[51单片机] EEPROM 24c02 [I2C代码封装-保存实现流水灯]

这里把EEPROM 24c02封装起来,今后可以直接调用,其连线方式为:SDA-P2.1;SCL-P2.0;WP-VCC >_<:i2c.c 1 /*----------------------------------------------- 2 名称:IIC协议 3 内容:函数是采用软件延时的方法产生SCL脉冲,固对高晶振频率要作 一定的修改....(本例是1us机器 4 周期,即晶振频率要小于12MHZ) 5 ---------------------------------------

命名空间:不只是代码封装

命名空间 命名空间并不是新事物,在很多面向对象的编程语言中,都得到了很好的支持,它有效的解决了同一个脚本中的成员命名冲突问题.所以说,命名空间是一种代码封装技术,代码中的每个成员,都是自己的活动空间,彼此互不干扰.在php中,命名空间主要针对三类成员:函数,常量和类,因为他们三个家伙的作用域都是全局的.所以在同一个脚本中,是不允许重复定义函数,常量和类的.下面我们用实例来演示: <?php const SITE_NAME = 'PHP中文网'; //声明常量SITE_NAME function

java代码封装与编译

代码封装: 在这个java程序内调用另一个类 在arrayTool中把这两个函数封装起来. 编译顺序: 先编译ArrayTool再编译ArrayOperatorDemo 因为编译ArrayOperatorDemo文件时会进行语法检查,检查到第九行,会在classPath下面去找是否存在ArrayTool.class文件,如果没有配置classPath会在当前文件目录下找 该类是否存在.如果两个都没有,虚拟机还会去这两个路径下去寻找是否还有同名的原文件.即.java文件

四则运算《《《代码封装

设计思路: 因为TabControl可以设置不同页的选项卡.所以我用它来分页,进行出题,答题设置.然后用savefiledialog保存所出题目.设置两个RichTextBox保存所出题目和出好题后做题时显示的题目.用Count计算做题总数,Right计算做正确的数目.点击结束时弹出Form对话框显示做题情况. 具体实现代码: Form1.cs 1 using System; 2 using System.Collections.Generic; 3 using System.Component

将PL/SQL代码封装在机灵的包中

将代码封装在机灵的包中 http://www.oracle.com/technetwork/issue-archive/2013/13-jan/o13plsql-1872456.html 绝大多数基于PL/SQL的应用都是由成千上万甚至上百万行代码组成,这里面包括了具体多变的用户需求. 商业逻辑的实现最初是由存储过程和函数完毕,可是开发人员须要考虑将这些过程和函数放在包中维护. 何为包? 包是一组PL/SQL代码元素(游标.类型.变量.过程.函数)集合的程序单元. 通常由包声明(对象声明)和包体

将PL/SQL代码封装在灵巧的包中

将代码封装在灵巧的包中 http://www.oracle.com/technetwork/issue-archive/2013/13-jan/o13plsql-1872456.html 绝大多数基于PL/SQL的应用都是由成千上万甚至上百万行代码组成,这里面包含了详细多变的用户需求. 商业逻辑的实现最初是由存储过程和函数完成,但是开发者需要考虑将这些过程和函数放在包中维护. 何为包? 包是一组PL/SQL代码元素(游标.类型.变量.过程.函数)集合的程序单元. 通常由包声明(对象声明)和包体(

【iOS开发-50】利用创建新的类实现代码封装,从而不知不觉实践一个简单的MVC实验

接上次案例谈代码封装.上次案例见:[iOS开发-48]九宫格布局案例:自动布局.字典转模型运用.id和instancetype区别.xib重复视图运用及与nib关系 代码封装的原则是:要保证视图控制器尽量少的接触到其他对象的属性,也就是说,尽量把数据或者属性封装到一个类里面,然后利用类或者对象的方法来调用或者设置数据.而是赤裸裸地把属性都写在视图控制器中.核心作用在于:减少视图控制器的代码量,把数据和属性的处理封装起来,这样也便于其他视图控制器的使用. 要做到的结果就是如下(我们要根据数组里面的

MVP+Dagger2+Rxjava+Retrofit+GreenDao 开发的小应用,包括新闻、图片、视频3个大模块,代码封装良好

练习MVP架构开发的App,算是对自己学过的知识做一个总结,做了有一段时间,界面还算挺多的.代码量还是有的,里面做了大量封装,总体代码整理得非常干净,这个我已经尽力整理了. 不管是文件(java.xml.资源文件)命名.还是布局设计尽量简单简洁,代码不会写的非常复杂.整个代码结构有非常高的统一度,结构也比較简单清晰,方便理解.里面做了大量的封装,包含基类的构建和工具类的封装.再配合Dagger2的使用能够极大地减轻V层(Activity和Fragment)的代码,假设你有看源代码的话你会发现大部

简易计算器(代码+封装+策略模式)

具体设计思路:1.先创建一个Windows窗体.2.添加所需控件,修改相应的属性值.3.对控件编写代码,使之实现相应的功能.4.设计出一个四则运算雏形后再根据需求完善代码.5.进行测试分析.6.对程序进行PSP耗时分析. 运行结果: 代码如下: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using Sys