📄 form1.cs
字号:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
namespace scyxf
{
public partial class Form1 : Form
{
int fi_i1 = 0;//move1
int fi_i2 = 0;//move2
int fi_i3 = 0;//move5
int fi_i4 = 0;//move4
double b = 1, c = 0;
Rectangle r1 = new Rectangle(0, 0, 50, 50);
Rectangle r2 = new Rectangle(0, 50, 50, 50);
Rectangle r3 = new Rectangle(0, 50, 50, 50);
Rectangle r4 = new Rectangle(0, 0, 50, 50);
bool f_type1 = false;
bool f_type2 = false;
public void shengchan1()//生产
{
SolidBrush sb = new SolidBrush(Color.Red);
pictureBox1.CreateGraphics().FillRectangle(sb, r1);
sb.Dispose();
}
public void xiaofei1()//消费
{
SolidBrush sb = new SolidBrush(Color.Red);
pictureBox2.CreateGraphics().FillRectangle(sb, r4);
sb.Dispose();
}
public void move1()//移动
{
if (f_type1 == true)
{
if (5 * (fi_i1) < 255)
pictureBox1.SetBounds(5 * (fi_i1++), 50, 50, 50);
else
{
fi_i1 = 0;
this.move2();
fi_i2++;
}
}
}
public void move2()//缓冲
{
if (fi_i2 - fi_i3 < 5)
{
double a = (double)fi_i2;
b = Math.IEEERemainder(a, 5.0);
if (b == 0)
{
if (fi_i2 == 0)
{
SolidBrush s11 = new SolidBrush(Color.Red);
groupBox3.CreateGraphics().FillRectangle(s11, r2);
s11.Dispose();
}
else
{
r2.Offset(-240, 0);
SolidBrush s22 = new SolidBrush(Color.Red);
groupBox3.CreateGraphics().FillRectangle(s22, r2);
s22.Dispose();
}
}
else
{
r2.Offset(60, 0);
SolidBrush s22 = new SolidBrush(Color.Red);
groupBox3.CreateGraphics().FillRectangle(s22, r2);
s22.Dispose();
}
}
}
public void move3()//填充
{
if (fi_i2 - fi_i3 > 0)
{
double a = (double)fi_i3;
c = Math.IEEERemainder(a, 5.0);
if (c == 0)
{
if (fi_i3 == 0)
{
SolidBrush s11 = new SolidBrush(Color.White);
groupBox3.CreateGraphics().FillRectangle(s11, r3);
s11.Dispose();
}
else
{
r3.Offset(-240, 0);
SolidBrush s22 = new SolidBrush(Color.White);
groupBox3.CreateGraphics().FillRectangle(s22, r3);
s22.Dispose();
}
}
else
{
r3.Offset(60, 0);
SolidBrush s22 = new SolidBrush(Color.White);
groupBox3.CreateGraphics().FillRectangle(s22, r3);
s22.Dispose();
}
}
}
public void move4()
{
if (f_type2 == true)
{
if (5 * (fi_i4) < 255)
{
pictureBox2.SetBounds(5 * (fi_i4++), 50, 50, 50);
}
else
{
fi_i4 = 0;
move3();
fi_i3++;
}
}
}
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
this.Close();
}
private void timer1_Tick(object sender, EventArgs e)
{
if (fi_i2 - fi_i3 < 5)
this.move1();
}
private void timer2_Tick(object sender, EventArgs e)
{
if (fi_i2 - fi_i3 > 0)
this.move4();
}
private void button2_Click(object sender, EventArgs e)
{
shengchan1();
f_type1 = true;
}
private void button3_Click(object sender, EventArgs e)
{
f_type1 = false;
}
private void button4_Click(object sender, EventArgs e)
{
if (fi_i2 - fi_i3 != 0)
{
xiaofei1();
f_type2 = true;
}
else
MessageBox.Show("缓冲区无产品!");
}
private void button5_Click(object sender, EventArgs e)
{
f_type2 = false;
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -