Difference between revisions of "C sharp exeption"

From Ilianko
(Created page with "<code><pre> using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using S...")
 
 
(9 intermediate revisions by the same user not shown)
Line 1: Line 1:
 +
== 123 ==
 +
 
<code><pre>
 
<code><pre>
 
using System;
 
using System;
Line 86: Line 88:
 
}
 
}
 
</pre></code>
 
</pre></code>
 +
 +
==456==
 +
Добавяне на [[exeption handling]].
 +
 +
Ще добавим exeption
 +
редът
 +
comport.Open();
 +
Да бъде заменен с :
 +
try
 +
{
 +
  comport.Open();
 +
}
 +
catch (UnauthorizedAccessException)
 +
{
 +
  MessageBox.Show("Серийният порт не е наличен или се използва");
 +
}
 +
 +
 +
 +
==Прочитане на символи от клавиатурата==
 +
 +
Метод, който се извиква при натискане на буто в "textBox1"
 +
 +
Върху [[KeyPress_csharp|TextBox1->Properties->Events->KeyPress->ИмеНаМетода]]
 +
 +
[[Category|C Sharp]]

Latest revision as of 20:28, 20 March 2015

123

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;
using System.IO.Ports;

namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {

        private SerialPort comport = new SerialPort();
        
        public Form1()
        {
            InitializeComponent();
            comport.RtsEnable = true;
            comport.DataReceived += new SerialDataReceivedEventHandler(port_DataReceived);
        }

        private void Form1_Load(object sender, EventArgs e)
        {

        }

        private void textBox1_TextChanged(object sender, EventArgs e)
        {
            textBox1.Invoke(new EventHandler(delegate
            {
                if (comport.IsOpen)
                {
                    string t = textBox1.Text;
                    char b = (char)t[t.Length - 1];
                    comport.Write(b.ToString());
                    if (b == '\n')
                        comport.Write("\r".ToString());
                }
            }
        ));

        }

        private void button1_Click(object sender, EventArgs e)
        {
            if (!comport.IsOpen)
            {
                comport.Open();
                if (comport.IsOpen)
                {
                    comport.Write("\n\rHello Serial Port!\n\r");
                    button1.Text = "Disconnect";
                }
            }
            else
            {
                comport.Close();
                if (!comport.IsOpen)
                {
                    button1.Text = "Connect";
                }
            }
        }

        private void port_DataReceived(object sender, SerialDataReceivedEventArgs e)
        {
            // If the com port has been closed, do nothing
            if (!comport.IsOpen) return;
            string data = comport.ReadExisting();

            textBox1.Invoke(new EventHandler(delegate
            {
                textBox1.AppendText(data);
            }));
        }



    }
}

456

Добавяне на exeption handling.

Ще добавим exeption редът

comport.Open();

Да бъде заменен с :

try
{
  comport.Open();
}
catch (UnauthorizedAccessException)
{
  MessageBox.Show("Серийният порт не е наличен или се използва");
}


Прочитане на символи от клавиатурата

Метод, който се извиква при натискане на буто в "textBox1"

Върху TextBox1->Properties->Events->KeyPress->ИмеНаМетода

C Sharp