標籤:
基於c#winform的九九乘法表最近做作業時候做到了基於c#表單的九九乘法表,在此做個總結,方便大家交流使用。
製作思路為自訂一些lable控制項,控制項上顯示乘法表的內容,在點擊對應的內容時出現結果。
運行結果:
點擊時效果:
表單載入時:
點擊label時:
完整代碼:
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;
namespace 乘法表
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private Label[] lab = new Label[100];
private void OnClick(object sender, EventArgs e) //點擊出現結果
{
String k = ((Label)sender).Text; //如果出現結果,再次點擊則返回
if (k.Length > 5)
return;
String jieguo = ((Label)sender).Name; //每個lable的name為該lable所處位置 在表單載入時就對label進行設定
string aa =Convert.ToString( jieguo[0]);
int a = Convert.ToInt32(aa);
string bb = Convert.ToString(jieguo[1]);
int b = Convert.ToInt32(bb);
int c = a * b;
((Label)sender).Text += " = " + c.ToString();
}
String s = "";
private void Form1_Load(object sender, EventArgs e)
{
this.Width = 800; //表單的寬
this.Height = 600; //表單的高
this.BackColor = Color.White; //表單的背景色a
int w = 80; //控制項的寬度
int h = 50; //控制項的高度
for (int i = 1; i < 10; i++) //9行
{
for (int j = i * 10+1; j < i * 10 + i+1; j++) //每行個數
{
lab[j] = new Label();
if (j > i * 10+1)
{
lab[j].Left = lab[j - 1].Left + w; //空間呢位置
}
else
{
lab[j].Left = 30; //第一列左邊距
}
s = Convert.ToString(j);
lab[j].Name = s; //控制項的name
lab[j].Text = s[1]+" * "+(s[0]); //控制項上顯示的字
lab[j].Width = w; //控制項的寬
lab[j].Height = h; //控制項的高
lab[j].BackColor = Color.HotPink; //label的背景色
lab[j].Top = (j / 10) * h; //控制項的上邊距
this.Controls.Add(lab[j]); //加入此控制項
lab[j].Click += new EventHandler(OnClick); //點擊事件
}
}
}
}
}
原始碼下載路徑:http://pan.baidu.com/s/1i3mVWC9
基於c#winform的九九乘法表