委托的了解

题目:显示 早上好,中午好,晚上好的 +名称

我们将早上好,中午好,晚上好封装成一个类,利用委托调用对应的方法。

class1.cs

 

代码
using System;
using System.Collections.Generic;
using System.Text;

namespace WindowsApplication1
{
public class Class1
{
internal delegate void getd(string name);
internal event getd dd;
public void zw(string name)
{
System.Windows.Forms.MessageBox.Show(
"中午好" + name);
}
public void zs(string name)
{
System.Windows.Forms.MessageBox.Show(
"早上好" + name);
}
public void ws(string name)
{
System.Windows.Forms.MessageBox.Show(
"晚上好" + name);
}

public void gettype(string name)
{
if(dd!=null)
dd(name);
}
}
}

 

 

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 WindowsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
DateTime nn
= DateTime.Now;
DateTime d1
=Convert.ToDateTime("12:00:00");

Class1 c
= new Class1();
DateTime d2
= Convert.ToDateTime("18:00:00");
if (nn < d1)
{
c.dd
+=new Class1.getd(c.zs);

c.gettype(
"***");
}
else if (nn < d2)
{
c.dd
+= new Class1.getd(c.zw);

c.gettype(
"***");
}
else if (nn > d2)
{
c.dd
+=new Class1.getd(c.ws);
c.gettype(
"***");
}




}



}
}

 

 

 早上好,***

中午好,***

晚上好,***

posted @ 2010-08-13 09:57  二锅头  阅读(180)  评论(0)    收藏  举报