📄 form1.cs
字号:
using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using System.Data;
namespace 抽象类_计算面积
{
/// <summary>
/// Form1 的摘要说明。
/// </summary>
public class Form1 : System.Windows.Forms.Form
{
private System.Windows.Forms.TextBox textBox1;
private System.Windows.Forms.TextBox textBox2;
private System.Windows.Forms.Label label1;
private System.Windows.Forms.Label label2;
private System.Windows.Forms.Label label3;
private System.Windows.Forms.Button button1;
private System.Windows.Forms.Button button2;
private System.Windows.Forms.Button button3;
/// <summary>
/// 必需的设计器变量。
/// </summary>
private System.ComponentModel.Container components = null;
public Form1()
{
//
// Windows 窗体设计器支持所必需的
//
InitializeComponent();
//
// TODO: 在 InitializeComponent 调用后添加任何构造函数代码
//
}
/// <summary>
/// 清理所有正在使用的资源。
/// </summary>
protected override void Dispose( bool disposing )
{
if( disposing )
{
if (components != null)
{
components.Dispose();
}
}
base.Dispose( disposing );
}
#region Windows 窗体设计器生成的代码
/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.textBox1 = new System.Windows.Forms.TextBox();
this.textBox2 = new System.Windows.Forms.TextBox();
this.label1 = new System.Windows.Forms.Label();
this.label2 = new System.Windows.Forms.Label();
this.label3 = new System.Windows.Forms.Label();
this.button1 = new System.Windows.Forms.Button();
this.button2 = new System.Windows.Forms.Button();
this.button3 = new System.Windows.Forms.Button();
this.SuspendLayout();
//
// textBox1
//
this.textBox1.Location = new System.Drawing.Point(128, 62);
this.textBox1.Name = "textBox1";
this.textBox1.Size = new System.Drawing.Size(133, 25);
this.textBox1.TabIndex = 0;
//
// textBox2
//
this.textBox2.Location = new System.Drawing.Point(384, 62);
this.textBox2.Name = "textBox2";
this.textBox2.Size = new System.Drawing.Size(133, 25);
this.textBox2.TabIndex = 1;
//
// label1
//
this.label1.Location = new System.Drawing.Point(11, 41);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(106, 62);
this.label1.TabIndex = 2;
this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
//
// label2
//
this.label2.Location = new System.Drawing.Point(277, 51);
this.label2.Name = "label2";
this.label2.Size = new System.Drawing.Size(107, 52);
this.label2.TabIndex = 3;
this.label2.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
//
// label3
//
this.label3.Location = new System.Drawing.Point(107, 123);
this.label3.Name = "label3";
this.label3.Size = new System.Drawing.Size(245, 52);
this.label3.TabIndex = 4;
//
// button1
//
this.button1.Location = new System.Drawing.Point(21, 195);
this.button1.Name = "button1";
this.button1.Size = new System.Drawing.Size(150, 30);
this.button1.TabIndex = 5;
this.button1.Text = "计算圆面积";
this.button1.Click += new System.EventHandler(this.button1_Click);
//
// button2
//
this.button2.Location = new System.Drawing.Point(203, 195);
this.button2.Name = "button2";
this.button2.Size = new System.Drawing.Size(149, 30);
this.button2.TabIndex = 6;
this.button2.Text = "计算矩形面积";
this.button2.Click += new System.EventHandler(this.button2_Click);
//
// button3
//
this.button3.Location = new System.Drawing.Point(384, 195);
this.button3.Name = "button3";
this.button3.Size = new System.Drawing.Size(149, 30);
this.button3.TabIndex = 7;
this.button3.Text = "计算三角形面积";
this.button3.Click += new System.EventHandler(this.button3_Click);
//
// Form1
//
this.AutoScaleBaseSize = new System.Drawing.Size(8, 18);
this.ClientSize = new System.Drawing.Size(554, 285);
this.Controls.Add(this.button3);
this.Controls.Add(this.button2);
this.Controls.Add(this.button1);
this.Controls.Add(this.label3);
this.Controls.Add(this.label2);
this.Controls.Add(this.label1);
this.Controls.Add(this.textBox2);
this.Controls.Add(this.textBox1);
this.Name = "Form1";
this.Text = "几何图形面积";
this.Load += new System.EventHandler(this.Form1_Load);
this.ResumeLayout(false);
this.PerformLayout();
}
#endregion
static double Area(PlaneGraphics PG)
{
return PG.Area( );
}
/// <summary>
/// 应用程序的主入口点。
/// </summary>
[STAThread]
static void Main()
{
Application.Run(new Form1());
}
private void Form1_Load(object sender, System.EventArgs e)
{
label1.Text="圆半径:\n矩形长:\n三角形底:";
label2.Text="矩形宽:\n三角形高:";
label3.Text="面积为:\n ";
}
private void button1_Click(object sender, System.EventArgs e)
{
label3.Text="面积为:\n ";
float r=Convert.ToSingle(textBox1.Text);
Circularity C=new Circularity(r);
label3.Text="圆"+label3.Text+Area(C).ToString( );
}
private void button2_Click(object sender, System.EventArgs e)
{
label3.Text="面积为:\n ";
float Length=Convert.ToSingle(textBox1.Text);
float Width=Convert.ToSingle(textBox2.Text);
Rectangle R=new Rectangle(Length,Width);
label3.Text="矩形"+label3.Text+Area(R).ToString( );
}
private void button3_Click(object sender, System.EventArgs e)
{
label3.Text="面积为:\n ";
float Hemline=Convert.ToSingle(textBox1.Text);
float High=Convert.ToSingle(textBox2.Text);
Triangle T=new Triangle(Hemline,High);
label3.Text="三角形"+label3.Text+Area(T).ToString( );
}
}
public abstract class PlaneGraphics //平面图形抽象类
{
protected float x;
protected float y;
public PlaneGraphics(float X,float Y)
{
x=X;
y=Y;
}
public abstract double Area( ); //抽象方法
}
public class Circularity:PlaneGraphics //圆派生类
{
public Circularity(float x):base(x,0){ }
public override double Area( ) //重载抽象方法
{
return (double)x*x*3.14;
}
}
public class Rectangle:PlaneGraphics
{
public Rectangle(float x,float y):base(x,y){ }
public override double Area( )
{
return (double)x*y;
}
}
public class Triangle:PlaneGraphics
{
public Triangle(float x,float y):base(x,y){ }
public override double Area( )
{
return (double)x*y/2;
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -