302Soft—302软件技术联盟

ASP.NET / C# / PowerBuilder 技术交流
posts - 58, comments - 56, trackbacks - 16, articles - 0
  博客园 :: 首页 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理

2007年12月7日

 
  DateTime  date1=DateTime.Now;   
  DateTime  date2=Convert.ToDateTime("2002/2/1"); 
   
  System.TimeSpan  df=date1-date2; 
  MessageBox.Show(df.Days+"天"+df.Hours+"小时"+df.Minutes+"分钟");

posted @ 2007-12-07 14:06 寒夜听雨 阅读(82) | 评论 (1)编辑

DateTime dt = DateTime.Now;
//   Label1.Text = dt.ToString();//2005-11-5 13:21:25
//   Label2.Text = dt.ToFileTime().ToString();//127756416859912816
//   Label3.Text = dt.ToFileTimeUtc().ToString();//127756704859912816
//   Label4.Text = dt.ToLocalTime().ToString();//2005-11-5 21:21:25
//   Label5.Text = dt.ToLongDateString().ToString();//2005年11月5日
//   Label6.Text = dt.ToLongTimeString().ToString();//13:21:25
//   Label7.Text = dt.ToOADate().ToString();//38661.5565508218
//   Label8.Text = dt.ToShortDateString().ToString();//2005-11-5
//   Label9.Text = dt.ToShortTimeString().ToString();//13:21
//   Label10.Text = dt.ToUniversalTime().ToString();//2005-11-5 5:21:25
//    2005-11-5 13:30:28.4412864
//   Label1.Text = dt.Year.ToString();//2005
//   Label2.Text = dt.Date.ToString();//2005-11-5 0:00:00
//   Label3.Text = dt.DayOfWeek.ToString();//Saturday
//   Label4.Text = dt.DayOfYear.ToString();//309
//   Label5.Text = dt.Hour.ToString();//13
//   Label6.Text = dt.Millisecond.ToString();//441
//   Label7.Text = dt.Minute.ToString();//30
//   Label8.Text = dt.Month.ToString();//11
//   Label9.Text = dt.Second.ToString();//28
//   Label10.Text = dt.Ticks.ToString();//632667942284412864
//   Label11.Text = dt.TimeOfDay.ToString();//13:30:28.4412864
//   Label1.Text = dt.ToString();//2005-11-5 13:47:04
//   Label2.Text = dt.AddYears(1).ToString();//2006-11-5 13:47:04
//   Label3.Text = dt.AddDays(1.1).ToString();//2005-11-6 16:11:04
//   Label4.Text = dt.AddHours(1.1).ToString();//2005-11-5 14:53:04
//   Label5.Text = dt.AddMilliseconds(1.1).ToString();//2005-11-5 13:47:04
//   Label6.Text = dt.AddMonths(1).ToString();//2005-12-5 13:47:04
//   Label7.Text = dt.AddSeconds(1.1).ToString();//2005-11-5 13:47:05
//   Label8.Text = dt.AddMinutes(1.1).ToString();//2005-11-5 13:48:10
//   Label9.Text = dt.AddTicks(1000).ToString();//2005-11-5 13:47:04
//   Label10.Text = dt.CompareTo(dt).ToString();//0
////   Label11.Text = dt.Add(?).ToString();//问号为一个时间段
//   Label1.Text = dt.Equals("2005-11-6 16:11:04").ToString();//False
//   Label2.Text = dt.Equals(dt).ToString();//True
//   Label3.Text = dt.GetHashCode().ToString();//1474088234
//   Label4.Text = dt.GetType().ToString();//System.DateTime
//   Label5.Text = dt.GetTypeCode().ToString();//DateTime
   
//   Label1.Text = dt.GetDateTimeFormats('s')[0].ToString();//2005-11-05T14:06:25
//   Label2.Text = dt.GetDateTimeFormats('t')[0].ToString();//14:06
//   Label3.Text = dt.GetDateTimeFormats('y')[0].ToString();//2005年11月
//   Label4.Text = dt.GetDateTimeFormats('D')[0].ToString();//2005年11月5日
//   Label5.Text = dt.GetDateTimeFormats('D')[1].ToString();//2005 11 05
//   Label6.Text = dt.GetDateTimeFormats('D')[2].ToString();//星期六 2005 11 05
//   Label7.Text = dt.GetDateTimeFormats('D')[3].ToString();//星期六 2005年11月5日
//   Label8.Text = dt.GetDateTimeFormats('M')[0].ToString();//11月5日
//   Label9.Text = dt.GetDateTimeFormats('f')[0].ToString();//2005年11月5日 14:06
//   Label10.Text = dt.GetDateTimeFormats('g')[0].ToString();//2005-11-5 14:06
//   Label11.Text = dt.GetDateTimeFormats('r')[0].ToString();//Sat, 05 Nov 2005 14:06:25 GMT

   Label1.Text =  string.Format("{0:d}",dt);//2005-11-5
   Label2.Text =  string.Format("{0:D}",dt);//2005年11月5日
   Label3.Text =  string.Format("{0:f}",dt);//2005年11月5日 14:23
   Label4.Text =  string.Format("{0:F}",dt);//2005年11月5日 14:23:23
   Label5.Text =  string.Format("{0:g}",dt);//2005-11-5 14:23
   Label6.Text =  string.Format("{0:G}",dt);//2005-11-5 14:23:23
   Label7.Text =  string.Format("{0:M}",dt);//11月5日
   Label8.Text =  string.Format("{0:R}",dt);//Sat, 05 Nov 2005 14:23:23 GMT
   Label9.Text =  string.Format("{0:s}",dt);//2005-11-05T14:23:23
   Label10.Text = string.Format("{0:t}",dt);//14:23
   Label11.Text = string.Format("{0:T}",dt);//14:23:23
   Label12.Text = string.Format("{0:u}",dt);//2005-11-05 14:23:23Z
   Label13.Text = string.Format("{0:U}",dt);//2005年11月5日 6:23:23
   Label14.Text = string.Format("{0:Y}",dt);//2005年11月
   Label15.Text = string.Format("{0}",dt);//2005-11-5 14:23:23 
   Label16.Text = string.Format("{0:yyyyMMddHHmmssffff}",dt);

posted @ 2007-12-07 13:57 寒夜听雨 阅读(62) | 评论 (1)编辑

2007年6月1日



ActiveBar3.0新增了Office2003和VS2005界面风格,可以轻易做出像Outlook2003的NavigationBar,只可惜它对PB的支持不太好,有部分方法在PB中无法调用,虽然帮助文件里说只支持VB6.0以上和C++,但PB里也可以使用,我也是刚在网上找到,用了一天的时间对其设计器和OCX控件进行了汉化,有小部分还保留了英文-因为汉化后在设计器里显示乱码。

因为最近太忙,汉化后没时间重新打包,所以请大家自己下载英文原版安装,然后从我博客下载个压缩包,用这两个文件替换掉原文件即可。我没试过,我想应该是没有问题的。本想把英文原版一起上传,但上传不成功,所以只符上注册码,大家自己安装吧。
SERIAL NUMBER :  DD-AB-30-E000151

汉化下载:http://www.cnblogs.com/Files/302soft/ActiveBar%203.0汉化.rar

posted @ 2007-06-01 21:42 寒夜听雨 阅读(739) | 评论 (5)编辑

2007年3月16日

PB没有取中文星期的函数,所以只能自己写,以前总是将系统的英文星期取出来,用一个CASE语句一个个转,代码太多,今天终于发现了一个简单的方法,用DayNumber转,只要两行代码就搞定:


//函数:  f_getChinessWeek()
//参数:  Date    ad_date
//返回:  String
//功能:  返回中文星期字符串
//作者:Gary 2007.03.16

String ls_warr[] = { "日", "一", "二", "三", "四", "五", "六", "日" }

Return "星期" + ls_warr[ DayNumber( ad_date ) ]


-----20070529更新-----

下面这句更简单

"星期"+mid("日一二三四五六",daynumber(today())*2 - 1 ,2)

posted @ 2007-03-16 13:56 寒夜听雨 阅读(175) | 评论 (1)编辑

2007年2月24日

这次更新的是公历日期和农历日期的显示问题,公历和农历的日期字体及颜色可以随意设置。
顺便发一个小控件:闪烁的标签。标签可以设置字体或者背景自动闪烁(变换颜色),闪烁频率可以自由更改,已经一起放压缩包里了,自己研究。

302CoolMonthCalendar3.0下载地址:
http://www.cnblogs.com/Files/302soft/MonthCalendar3.0.rar

posted @ 2007-02-24 20:42 寒夜听雨 阅读(4388) | 评论 (3)编辑

2007年2月11日



一直想找个支持农历的月历控件,可是找了许久,网上的都不太令人满意,还是自己动手做一个吧。经过多天的努力,参考了网上许代码,现在基本上已经完成了,先贴个图让大伙瞧瞧,如果大家感兴趣的话我会把控件发上来,至于源代码,我看情况吧,春节过后我可能会公开一部分。

控件主要功能已基本完成。
支持1900年-2100年间的 农历、节日、节气、生肖、星座;公农历日期中文显示;月历输出为图片;月历打印;背景自定义;显示格式自定义 等等等等,功能强大!!

祝大家过个开心的好年!我也准备收拾行装回家过年了。
---------------------------------------------------------------------
控件改进了许多地方,加入了背景显示年月等。
现在把控件放上来,有兴趣的朋友请自行下载。改天我再写份文档,大家先自己研究一下,不足之处请指。

农历及节日等信息的命名空间引用:using GX302Soft.CnCalendar;

2.0 下载:
。。。。。。

3.0已经发布,请到以下页面下载。
http://www.cnblogs.com/302soft/archive/2007/02/24/655119.html




 

 

 

 

 

posted @ 2007-02-11 14:50 寒夜听雨 阅读(3943) | 评论 (7)编辑

2007年2月7日

        最近在写个公农历转换的类,在网上查了很多资料,发觉网上的许多查询程序在计算干支年的时候好像都有问题。

        本人认为,天干地支记年法应该是属于农历的,比如 丁亥猪年,应该是从农历的二○○七年正月初一开始到农历十二月底,而不是从二十四节气中的立春,更不是从公历的2007年1月1日算起。但是许多在线查询的网站上好像都有错,包括腾讯星座频道上的万年历和一些专门的农历查询网站。都是立春开始就算是丁亥年了,但实际上今年的立春比春节早十几天,08年也早两三天。刚开始我一直想不明白到底怎么回事,也不知道哪种说法是正确的,后来查了大量资料,看了很多历法方面的文章,我觉得这从立春开始算根本就不准确。

        我对天文历法各方面不是很了解,这也只代表我个人的看法,如有不当之处还请各位批评指证。

posted @ 2007-02-07 05:17 寒夜听雨 阅读(4104) | 评论 (6)编辑

2007年2月5日

     摘要:
中国公历算法不是太难,关键是星期值的确定。这里给出了简单算法:


public static int dayOfWeek(int y, int m, int d)
{
int w = 1; // 公历一年一月一日是星期一,所以起始值为星期日
y = (y-1)%400 + 1; // 公历星期值分部 400 年循环一次
int ly = (y-1)/4; // 闰年次数
ly = ly - (y-1)/100; ly = ly + (y-1)/400;
int ry = y - 1 - ly; // 常年次数
w = w + ry; // 常年星期值增一
w = w + 2*ly; // 闰年星期值增二
w = w + dayOfYear(y,m,d);
w = (w-1)%7 + 1; return w; }
  阅读全文

posted @ 2007-02-05 19:19 寒夜听雨 阅读(267) | 评论 (2)编辑

2007年2月3日

     摘要: 问题:
怎么样在不删除程序的情况下,把添加删除程序里面的某个程序的卸载项目删掉?

答案:
进入注册表,在:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall 分支下找到该程序主键,并将其删除。  阅读全文

posted @ 2007-02-03 14:10 寒夜听雨 阅读(318) | 评论 (0)编辑

下载地址:http://www.cnblogs.com/Files/302soft/302CoolClock.rar




这是本人改版增强的桌面时钟程序,部分代码和图片来自网上的“玉兰时钟”。

功能简介:

1.可以自己制作时钟皮肤。可以自行组合图片做成时钟显示面板(.BMP格式),放到Skin文件夹下,然后打开Skin.ini文件,参照里面的参数增加一条新加入的皮肤信息即可,程序会自动搜索该目录下的所有图片。

2.农历显示和查询功能。可以显示农历日期、星座、节气、公历和农历节日,这是本人重新写的一个农历类库,而万年历查询控件则是来自网上。

3.液晶数字显示功能。模拟液晶屏显示时间。

4.图片格式转换的程序。可以在 .BMP, .JPG, .GIF, .TIF, .PNG, .ICO 等多种图象格式间进行互相转换。

5.真正的背景透明。玉兰时钟在24位色以上的环境下并不支持背景透明,现在已经完善。

6.定时提醒。

7.定时关机/重启。

8.光驱控制。

程序用SharpDevelop2.0开发,需安装 .NET Framework2.0 运行库。程序源代码将在下一版本发布的时候一起公布,下一版本将进一步完善农历控件,并增加模拟真实时钟显示功能及一些实用的功能。有兴趣的朋友顶一下。

在下也是刚学C#不久,请各位多多指教。

posted @ 2007-02-03 09:51 寒夜听雨 阅读(3684) | 评论 (3)编辑


Copyright(C) 2004-2007 302Soft-寒夜听雨 版权所有