C#编程,使用Visual Studio .NET 2010,完成下面WPF程序,求大神指点
编写自定义时间类MyTime。1、字段:hour,minute,second。表示时,分,秒。2、方法SetTime。一个参数设置小时,二个参数设置小时和分钟。三个参数设...
编写自定义时间类MyTime。
1、字段:hour,minute,second。表示时,分,秒。
2、方法SetTime。一个参数设置小时,二个参数设置小时和分钟。三个参数设置小时,分钟和秒。
3、方法IncreaseSecond( ),功能为增加一秒。
4、方法 IncreaseMinute( ),功能为增加一分钟
5、方法IncreaseHour( ),功能为增加一小时
6、方法:ToUniversalString():返回用24小时制显示时间,如13:12:47。ToStandardString():用12小时制显示时间,如1:12:47PM(AM上午,PM下午) 展开
1、字段:hour,minute,second。表示时,分,秒。
2、方法SetTime。一个参数设置小时,二个参数设置小时和分钟。三个参数设置小时,分钟和秒。
3、方法IncreaseSecond( ),功能为增加一秒。
4、方法 IncreaseMinute( ),功能为增加一分钟
5、方法IncreaseHour( ),功能为增加一小时
6、方法:ToUniversalString():返回用24小时制显示时间,如13:12:47。ToStandardString():用12小时制显示时间,如1:12:47PM(AM上午,PM下午) 展开
3个回答
展开全部
public class MyTime
{
//小时
private int _hour=0;
public int Hour
{
get{return _hour;}
set{_hour = value;}
}
//分钟
private int _minute = 0;
public int Minute
{
get{return _minute;}
set{_minute = value;}
}
//秒
private int _second = 0;
public int Second
{
get{return _second;}
set{_second=value;}
}
public void IncreaseSecond()
{
_second++;
if(_second>=60)
{
_minute++;
if(_minute>=60)
{
_hour++;
if(_hour>=24)
{
_hour = _hour -24;
}
_minute = _minute-60;
}
_second = _second-60;
}
}
public void IncreaseMinute()
{
_minute++;
if(_minute>=60)
{
_hour++;
if(_hour>=24)
{
_hour = _hour -24;
}
_minute = _minute-60;
}
}
public void IncreaseHour()
{
_hour++;
if(_hour>=24)
{
_hour = _hour -24;
}
}
public string ToUniversalString()
{
return Convert.ToDateTime(_hour.ToString().PadLeft(2,'0')+":"+_minute.ToString().PadLeft(2,'0')+":"+_second.ToString().PadLeft(2,'0')).ToString("HH:mm:ss");
}
public string ToStandardString()
{
return Convert.ToDateTime(_hour.ToString().PadLeft(2,'0')+":"+_minute.ToString().PadLeft(2,'0')+":"+_second.ToString().PadLeft(2,'0')).ToString("hh:mm:ss tt",new System.Globalization.CultureInfo("en-us"));
}
}
至于复制,你可以在要用的页面New一下,给字段复制就可以了:
MyTime newMyTime = new MyTime();
newMyTime.Hour = 12;
newMyTime.Minute = 20;
newMyTime.Second = 10;
代码用文本手写的,没运行,不过应该没什么大问题
WPF在我看来主要是前端显示更好一点,不知道符合你要求不
{
//小时
private int _hour=0;
public int Hour
{
get{return _hour;}
set{_hour = value;}
}
//分钟
private int _minute = 0;
public int Minute
{
get{return _minute;}
set{_minute = value;}
}
//秒
private int _second = 0;
public int Second
{
get{return _second;}
set{_second=value;}
}
public void IncreaseSecond()
{
_second++;
if(_second>=60)
{
_minute++;
if(_minute>=60)
{
_hour++;
if(_hour>=24)
{
_hour = _hour -24;
}
_minute = _minute-60;
}
_second = _second-60;
}
}
public void IncreaseMinute()
{
_minute++;
if(_minute>=60)
{
_hour++;
if(_hour>=24)
{
_hour = _hour -24;
}
_minute = _minute-60;
}
}
public void IncreaseHour()
{
_hour++;
if(_hour>=24)
{
_hour = _hour -24;
}
}
public string ToUniversalString()
{
return Convert.ToDateTime(_hour.ToString().PadLeft(2,'0')+":"+_minute.ToString().PadLeft(2,'0')+":"+_second.ToString().PadLeft(2,'0')).ToString("HH:mm:ss");
}
public string ToStandardString()
{
return Convert.ToDateTime(_hour.ToString().PadLeft(2,'0')+":"+_minute.ToString().PadLeft(2,'0')+":"+_second.ToString().PadLeft(2,'0')).ToString("hh:mm:ss tt",new System.Globalization.CultureInfo("en-us"));
}
}
至于复制,你可以在要用的页面New一下,给字段复制就可以了:
MyTime newMyTime = new MyTime();
newMyTime.Hour = 12;
newMyTime.Minute = 20;
newMyTime.Second = 10;
代码用文本手写的,没运行,不过应该没什么大问题
WPF在我看来主要是前端显示更好一点,不知道符合你要求不
展开全部
我同意楼上所说的,建议你自己好好学习一下,本人亲测的(当然没有做数据有效性的验证,就是时间输入的时候可以超出现实,比如25:61:100)如果需要,我再完善。。。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication1
{
class MyTime
{
private int hour = 0;
private int minute = 0;
private int second = 0;
public void SetTime(int hour)
{
this.hour = hour;
}
public void SetTime(int hour, int minute)
{
this.hour = hour;
this.minute = minute;
}
public void SetTime(int hour, int minute, int second)
{
this.hour = hour;
this.minute = minute;
this.second = second;
}
public void IncreaseSecond()
{
second += 1;
}
public void IncreaseMinute()
{
minute += 1;
}
public void IncreaseHour()
{
hour += 1;
}
public string ToUniversalint()
{
return hour + ":" + minute + ":" + second;
}
public string ToStandardint()
{
if (hour <= 12)
{
return hour + ":" + minute + ":" + second + " AM";
}
else
{
return (hour - 12) + ":" + minute + ":" + second+" PM";
}
}
}
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这个任务的重点,是希望你理解什么叫面向对象,实现不难
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询