2-C#控件

发布于:2025-05-08 ⋅ 阅读:(18) ⋅ 点赞:(0)

2-控件

1.panel控件的使用

        private void button3_Click(object sender, EventArgs e)
        {
            Form2 my2 = new Form2();
            my2.TopLevel = false;
            this.panel1.Controls.Add(my2);
            my2.BringToFront();
            my2.Show();
        }

        private void button4_Click(object sender, EventArgs e)
        {
            Form3 my3 = new Form3();
            my3.TopLevel = false;
            this.panel1.Controls.Add(my3);
            my3.BringToFront();
            my3.Show();
        }

2.radiobutton控件的使用

private void button5_Click(object sender, EventArgs e)
{
    if (radioButton1.Checked==true)
    {
        label4.Text = DateTime.Now.ToString();
    }
}

3.tabcontrol控件的使用

        private void button12_Click(object sender, EventArgs e)
        {
            tab1.Parent = null;
            tab2.Parent = tabControl1;
        }

        private void tabControl2_SelectedIndexChanged(object sender, EventArgs e)
        {
            MessageBox.Show("你点击了"+ tabControl1.SelectedTab.Text);
        }

        private void button13_Click(object sender, EventArgs e)
        {
            tab2.Parent = null;
            tab1.Parent = tabControl1;
        }

4.label控件的使用

显示圆形红色和黑色切换,text属性写入异形字符

        private void button8_Click(object sender, EventArgs e)
        {
            label4.ForeColor = Color.Gray;
        }
        private void button8_Click(object sender, EventArgs e)
        {
            label4.ForeColor = Color.Gray;
        }

5.groupBox控件的使用

        private void button15_Click(object sender, EventArgs e)
        {
            groupBox1.Enabled = false;
        }

        private void button16_Click(object sender, EventArgs e)
        {
            groupBox1.Enabled = true;
        }

6.comboBox控件的使用

        private void button7_Click(object sender, EventArgs e)
        {
            if (comboBox1.Text == "000")
            {
                label7.Text = "666";
            }
        }
        
        comboBox1.Items.Add(“添加的内容”);

7.textBox1控件的使用

显示到文本最下端位置

private void textBox1_TextChanged(object sender, EventArgs e)
{
    textBox1.SelectionStart = textBox1.Text.Length;
    textBox1.ScrollToCaret();
}

8.numericUpDown控件的使用

Increment属性用来设定上或下的移动步距

private void numericUpDown1_ValueChanged(object sender, EventArgs e)
{
    label9.Text = numericUpDown1.Text;
}

9.timer1控件的使用

private void timer1_Tick(object sender, EventArgs e)
{
    label3.Text = DateTime.Now.ToString("yyyy:MM:dd:HH:mm:ss.ff");
    textBox1.Text = textBox1.Text + DateTime.Now.ToString("yyyy:MM:dd:HH:mm:ss.ff"+"\n");
}

private void button5_Click(object sender, EventArgs e)
{
    timer1.Start();
}

private void button6_Click(object sender, EventArgs e)
{
    timer1.Stop();
    timer1.Interval = 100;
}

10.改变窗体大小

this.Width = 1074;//改变窗体大小
this.Height = 255;//改变窗体大小

11.menuStrip与contextMenuStrip

顶部菜单控件,想要实现右击效果contextMenuStrip属性选择contextMenuStrip1
toolTip1控件用于显示控件的说明
注意想要显示的控件的属性toolTip1上的ToolTip的名称就是提示内容
在这里插入图片描述

12.toolTip

AllowItemRecorder属性用于能否自动排序
Dock选择停靠的位置
LayoutStyle水平还是数值显示
GripStyle用于显示手柄的可见性
showitemtooltips用于是否显示光标的提示
在这里插入图片描述

13.progressBar

step属性用于定义增加或者减小的步长

private void button10_Click(object sender, EventArgs e)
{
   if (progressBar1.Value<=90) progressBar1.Value +=10 ;
   else progressBar1.Value = 100 ;
}

14.串口操作

private void button1_Click(object sender, EventArgs e)
{
    string[] ArryPort = System.IO.Ports.SerialPort.GetPortNames();//获取到本地的串口
    comboBox1.Items.Clear();
    for (int i = 0; i < ArryPort.Length; i++)
    {
        comboBox1.Items.Add(ArryPort[i]);
    }
}
private void button2_Click(object sender, EventArgs e)//打开串口
{
    if (button2.Text == "启用端口")
    {
        try
        {
            serialPort1.PortName = comboBox1.Text;
            serialPort1.Open();
            button2.Text = "关闭端口";
            button2.BackColor = System.Drawing.Color.Red;
            serialPort1.BaudRate = Convert.ToInt32(comboBox2.Text);
            this.Width = 1074;//改变窗体大小
            this.Height = 786;//改变窗体大小
            tabPage1.Parent = tabControl1;//显示标签
        }
        catch
        {
            System.Media.SystemSounds.Beep.Play();
            MessageBox.Show("端口打开失败", "错误");
        }
    }
    else
    {
        try
        {
            timer1.Stop();
            serialPort1.Close();
            button2.Text = "启用端口";
            button2.BackColor = System.Drawing.Color.Green;
        }
        catch
        {
            System.Media.SystemSounds.Beep.Play();
            MessageBox.Show("关闭串口失败", "错误");
        }
    }
}
private void SendtoMCU(byte[] send)
{
    if (serialPort1.IsOpen)
    {
        string str = "";
        for (int i = 0; i < send.Length; i++)
        {
            str = str + send[i].ToString("X2") + " ";
        }
        textsend.Text = str;
        serialPort1.Write(send, 0, send.Length);
    }
    else
    {
        MessageBox.Show("串口未开启", "Error", MessageBoxButtons.OK);
        timer1.Stop();
    }
}
private void ReceiveFromMCU()
{
    try
    {
        if (serialPort1.IsOpen)
        {
            byte[] rec = new byte[serialPort1.BytesToRead];
            serialPort1.Read(rec, 0, rec.Length);
            string str = "";
            for (int i = 0; i < rec.Length; i++)
            {
                str = str + rec[i].ToString("X2") + " ";
            }
            textrecvive.Text = str;
        }
        else
        {
            MessageBox.Show("串口未开启!", "Error", MessageBoxButtons.OK);
            timer1.Stop();
            serialPort1.Close();
        }
    }
    catch (Exception ex)
    {
        timer1.Stop();
    }
}

14.datetime控件

private void button11_Click(object sender, EventArgs e)
{
   
    label7.Text = DateTime.Now.ToString("yyyy-MM-dd");          // "2023-05-15"
    label8.Text = DateTime.Now.ToString("MM/dd/yyyy HH:mm:ss"); // "05/15/2023 14:30:45"
    label9.Text = DateTime.Now.ToString("dddd, MMMM d, yyyy");  // "Monday, May 15, 2023"
    label10.Text = DateTime.Now.ToString("hh:mm tt");            // "02:30 PM"
    label11.Text = DateTime.Now.ToString();
    label12.Text = DateTime.Now.Ticks.ToString();
}
  private void Delay(double delayTime)
  {
      DateTime now = DateTime.Now;
      double s;
      do
      {
          TimeSpan spand = DateTime.Now - now;
          s = spand.Milliseconds;
          Application.DoEvents();
      } while (s < delayTime);
  }

15.获取随机数

Random rd = new Random();
int number = rd.Next(500,1000);

16.scottplot控件

绘制图表


网站公告

今日签到

点亮在社区的每一天
去签到