Клавиатурный тренажер

Автор: Пользователь скрыл имя, 27 Ноября 2011 в 20:14, курсовая работа

Краткое описание

В связи с бурным развитием информационных технологий, у многих пользователей персональных компьютеров возникла потребность быстро вводить текстовую информацию используя компьютерную клавиатуру. Это и послужило появлению разнообразных программ-тренажеров, для получения и усовершенствования навыка набора текста.
Клавиатурный тренажер - это эффективная программа для освоения слепой машинописи.

Оглавление

ВВЕДЕНИЕ 3
1. ИНСТРУКЦИЯ ПОЛЬЗОВАТЕЛЯ 4
2. ОПИСАНИЕ АЛГОРИТМА РЕШЕНИЯ ЗАДАЧИ 9
3. ОПИСАНИЕ ПРОГРАММЫ 11
4. СПИСОК ОБЪЕКТОВ, ИСПОЛЬЗУЮЩИХСЯ В ПРОГРАММЕ 12
4.1. Form1 (KeyTrain): 12
4.2. Form2 (Настройки) 12
4.3. Form3 (Инструкция, О программе, Об авторе) 13
5. ДИАГРАММА КЛАССОВ 14
5.1. Groups by Kind: 14
5.2. Groups by Access: 15
6. ЛИСТИНГ ПРОГРАММЫ 16
6.1. Form1.cs 16
6.2. Form2.cs: 21
6.3. Form3.cs: 23
ЗАКЛЮЧЕНИЕ 25
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ 27

Файлы: 1 файл

KeyTrain.docx

— 918.13 Кб (Скачать)

 

5.2. Groups by Access:

Рис. 5.2. Диаграмма классов в .режиме Groups by Access

Источник: личная разработка автора 

 

6. ЛИСТИНГ ПРОГРАММЫ

6.1. Form1.cs

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;

namespace KeyTrain

{

    public partial class Form1 : Form

    {

        public int yrand, t;

        public Form2 fm2 = new Form2();

        public Form3 fm3 = new Form3();

        public int fail, kolvo;

        public char[] engstr = { 'Q', 'W', 'E', 'R', 'T', 'Y', 'U', 'I', 'O', 'P', 'A', 'S', 'D', 'F', 'G', 'H', 'J', 'K', 'L', 'Z', 'X', 'C', 'V', 'B', 'N', 'M' };

        public char[] russtr = { 'Й', 'Ц', 'У', 'К', 'Е', 'Н', 'Г', 'Ш', 'Щ', 'З', 'Ф', 'Ы', 'В', 'А', 'П', 'Р', 'О', 'Л', 'Д', 'Я', 'Ч', 'С', 'М', 'И', 'Т', 'Ь', 'Х', 'Ъ', 'Ж', 'Э', 'Б', 'Ю', 'Ё' };

        public int[] numb = {81, 87, 69, 82, 84, 89, 85, 73, 79, 80, 65, 83, 68, 70, 71, 72, 74, 75, 76, 90, 88, 67, 86, 66, 78, 77, 219, 221, 186, 222, 188, 190, 192};

        public int a;

        public int i, randl;

        public Form1()

        {

            InitializeComponent();

        }

        private void выходToolStripMenuItem1_Click(object sender, EventArgs e)

        {

            this.Close();

        }

        private void выходToolStripMenuItem_Click(object sender, EventArgs e)

        {

            this.Close();

        }

        private void опцииToolStripMenuItem_Click_1(object sender, EventArgs e)

        {

            Form2 fm2 = new Form2();

            timerspeed.Enabled = false;

            seconds.Enabled = false;

            button1.Visible = false;

            button1.Location = new Point(yrand, 0);

            fm2.fm1 = this;

            fm2.Show();

            fm2.comboBox1.SelectedIndex = 0;

            this.Enabled = false;

        }

        private void стартToolStripMenuItem_Click(object sender, EventArgs e)

        {

            fail=0;

            kolvo=0;

            Random rand = new Random();

            if (pictureBoxRus.Visible == true)

                randl = rand.Next(0, 32);

            else if (pictureBoxEng.Visible == true)

                randl = rand.Next(0, 26);

            if (pictureBoxRus.Visible==true) button1.Text = Convert.ToString(russtr[randl]);

            else button1.Text = Convert.ToString(engstr[randl]);

            timerspeed.Enabled = true;

            button1.Visible = true;

            timermin.Enabled = true;

            seconds.Enabled = true;

        }

        private void timerspeed_Tick(object sender, EventArgs e)

        {

            yrand = Convert.ToInt32(this.button1.Location.X);

            Random r = new Random();

            a = Convert.ToInt32(this.button1.Location.Y);

            button1.Location = new Point(yrand, a+20);

            if (a >= 330)

            {

                a = 0;

                kolvo = kolvo + 1;

                fail = fail + 1;

                textBox3.Text = Convert.ToString(kolvo);

                textBox1.Text = Convert.ToString(fail);

                yrand = r.Next(0, 638);

                button1.Location = new Point(yrand, 0);

                if (pictureBoxRus.Visible == true)

                    randl = r.Next(0, 32);

                else if (pictureBoxEng.Visible == true)

                    randl = r.Next(0, 26);

                if (pictureBoxRus.Visible==true) button1.Text = Convert.ToString(russtr[randl]);

                else button1.Text = Convert.ToString(engstr[randl]);

            }

        }

        private void timermin_Tick(object sender, EventArgs e)

        {

            timerspeed.Enabled = false;

            button1.Visible = false;

            button1.Location = new Point(200, yrand);

            seconds.Enabled = false;

            fm2.min = 1;

        }

        private void seconds_Tick(object sender, EventArgs e)

        {

            textBox2.Text = Convert.ToString(Convert.ToInt32(textBox2.Text)-1);

        }

        private void Form1_Activated(object sender, EventArgs e)

        {

        }

        private void Form1_KeyUp(object sender, KeyEventArgs e)

        {

            if (timermin.Enabled == true)

            {

                int scan = (int)e.KeyCode;

                Random r = new Random();

                if (scan == numb[randl])

                {

                    kolvo = kolvo + 1;

                    textBox3.Text = Convert.ToString(kolvo);

                    textBox1.Text = Convert.ToString(fail);

                    yrand = r.Next(0, 638);

                    button1.Location = new Point(yrand, 0);

                    if (pictureBoxRus.Visible == true)

                        randl = r.Next(0, 32);

                    else if (pictureBoxEng.Visible == true)

                        randl = r.Next(0, 26);

                    if (pictureBoxRus.Visible == true) button1.Text = Convert.ToString(russtr[randl]);

                    else if (pictureBoxEng.Visible == true) button1.Text = Convert.ToString(engstr[randl]);

                }

                else if (scan != numb[randl])

                {

                    fail = fail + 1;

                    textBox1.Text = Convert.ToString(fail);

                }

            }

           

        }

        private void оПрограммеToolStripMenuItem1_Click(object sender, EventArgs e)

        {

            fm3.fm1 = this;

            fm3.Show();

            fm3.Text = "Инструкция";

            fm3.listBoxInstruction.Visible = true;

            fm3.listBoxProgram.Visible = false;

            fm3.listBoxAuthor.Visible = false;

            this.Enabled = false;

        }

        private void оПрограммеToolStripMenuItem2_Click(object sender, EventArgs e)

        {

            fm3.Show();

            fm3.Text = "О программе";

            fm3.listBoxInstruction.Visible = false;

            fm3.listBoxProgram.Visible = true;

            fm3.listBoxAuthor.Visible = false;

            this.Enabled = false;

        }

        private void обАвтореToolStripMenuItem_Click(object sender, EventArgs e)

        {

            fm3.Show();

            fm3.Text = "Об авторе";

            fm3.listBoxInstruction.Visible = false;

            fm3.listBoxProgram.Visible = false;

            fm3.listBoxAuthor.Visible = true;

            this.Enabled = false;

        }

    }

}

6.2. Form2.cs:

using System.Text;

using System.Windows.Forms;

namespace KeyTrain

{

    public partial class Form2 : Form

    {

        public Form1 fm1;

        public int min, lang, comp;

        public Form2()

        {

            InitializeComponent();

        }

        private void button1_Click(object sender, EventArgs e)

        {

            min = Convert.ToInt32(this.numericUpDown1.Value);

            if (comboBox1.Text == "Новичок")

            {

                comp = 1;

                fm1.timerspeed.Interval = 200;

            }

            else if (comboBox1.Text == "Умелый")

            {

                comp = 2;

                fm1.timerspeed.Interval = 100;

            }

            else

            {

                comp = 3;

                fm1.timerspeed.Interval = 50;

            }

            if (radioButton1.Checked == true)

            {

                lang = 1;

                fm1.pictureBoxRus.Visible = true;

                fm1.pictureBoxEng.Visible = false;

            }

            else

            {

                lang = 2;

                fm1.pictureBoxRus.Visible = false;

                fm1.pictureBoxEng.Visible = true;

            }

            fm1.Enabled = true;

            fm1.textBox3.Text = "0";

            fm1.textBox1.Text = "0";

            fm1.timermin.Interval = min*60000+1000;

            fm1.textBox2.Text = Convert.ToString(min*60);

            this.Close();

        }

        private void Form2_FormClosed(object sender, FormClosedEventArgs e)

        {

            fm1.Enabled = true;

        }

    }

}

6.3. Form3.cs:

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;

namespace KeyTrain

{

    public partial class Form3 : Form

    {

        public Form1 fm1;

        public Form3()

        {

            InitializeComponent();

        }

        private void button1_Click(object sender, EventArgs e)

        {

            fm1.Enabled = true;

            this.Close();

        }

Информация о работе Клавиатурный тренажер