Írjunk programot, amely nyomógombok segítségével téglalapot, kört és ellipszist rajzol különböző színekkel befestve, valamit rádiógombok használatával kék keretű és sárga színnel befestett négyzetbe piros, kék, zöld és barna színnel befestett kört rajzol.
A feladat megoldása
Pen p = new Pen(Color.Blue, 2);
bool negyzetbenKor = false;
Brush ecset;
Rectangle t = new Rectangle(new Point(100, 50),
new Size(100, 100));
private void Form1_Load(object sender, EventArgs e)
{
radioButton1.Checked = true;
radioButton2.Checked = false;
radioButton3.Checked = false;
radioButton4.Checked = false;
radioButton5.Checked = false;
}
private void radioButton1_CheckedChanged(object sender,
EventArgs e)
{
negyzetbenKor = false;
Refresh();
}
private void radioButton2_CheckedChanged(object sender,
EventArgs e)
{
ecset = Brushes.Red;
negyzetbenKor = true;
Refresh();
}
private void radioButton3_CheckedChanged(object sender,
EventArgs e)
{
ecset = Brushes.Blue;
negyzetbenKor = true;
Refresh();
}
private void radioButton4_CheckedChanged(object sender,
EventArgs e)
{
ecset = Brushes.Green;
negyzetbenKor = true;
Refresh();
}
private void radioButton5_CheckedChanged(object sender,
EventArgs e)
{
ecset = Brushes.Chocolate;
negyzetbenKor = true;
Refresh();
}
private void Teglalap_Click(object sender, EventArgs e)
{
Graphics g = this.CreateGraphics();
Rectangle t = new Rectangle(new Point(30, 170),
new Size(50, 80));
g.DrawRectangle(p, t);
g.FillRectangle(Brushes.LightGreen, t);
}
private void Kor_Click(object sender, EventArgs e)
{
Graphics g = this.CreateGraphics();
Rectangle t1 = new Rectangle(new Point(140, 170),
new Size(50, 50));
g.FillEllipse(Brushes.Turquoise, t1);
}
private void Ellipszis_Click(object sender, EventArgs e)
{
Graphics g = this.CreateGraphics();
Rectangle t2 = new Rectangle(new Point(250, 150),
new Size(50, 100));
g.FillEllipse(Brushes.LightSeaGreen, t2);
}
private void Form1_Paint(object sender, PaintEventArgs e)
{
if (negyzetbenKor)
{
Graphics g = e.Graphics;
g.DrawRectangle(p, t);
g.FillRectangle(Brushes.Yellow, t);
g.FillEllipse(ecset, t);
}
}
A program futási eredményei: