C#,如何让时钟以额外的时间工作?

发布于 2024-11-07 16:45:29 字数 556 浏览 5 评论 0原文

使用 Visual Studio 2008 (C#) 我必须制作一个工作时钟(数字)与当前时区小时,以及更多具有不同时区的时钟,例如纽约等。

在表单中我放置了 2 个标签(用于时钟)和一个计时器,在计时器内部我输入了这段代码:

 timer1.Interval = 1000;

        label1.Text = DateTime.Now.ToLongTimeString();
        DateTime myDateTime = DateTime.Now;


        TimeSpan myTimeSpan = new TimeSpan(2, 0, 0);
        DateTime myDateTime8 = myDateTime + myTimeSpan;
        label2.Text = ("" + myDateTime8);

带有时间跨度的部分确实给时钟增加了 2 个小时,但是,我不仅得到了实际的时钟,还得到了它左边的日期,例如:

“17- 05-2011 22:38:00"

我需要知道如何添加/减去小时并仅显示时钟。

Using Visual Studio 2008 (C#) I have to make a working clock (digital) with the current time zone hour, and a few more with different time zones, like new york, etc.

inside the form I put 2 labels (for the clocks) and a timer, inside the timer I put this code:

 timer1.Interval = 1000;

        label1.Text = DateTime.Now.ToLongTimeString();
        DateTime myDateTime = DateTime.Now;


        TimeSpan myTimeSpan = new TimeSpan(2, 0, 0);
        DateTime myDateTime8 = myDateTime + myTimeSpan;
        label2.Text = ("" + myDateTime8);

the part with the timespan does add 2 hours to the clock, however, instead of just the actually clock I also get the date on it's left, like for example:

"17-05-2011 22:38:00"

I need to know how can I add/subtract hours and only show the clock.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

删除→记忆 2024-11-14 16:45:29

无需添加时间跨度,只需调用 AddHours 方法即可:

myDateTime.AddHours(2).ToLongTimeString();

Instead of adding a timespan, simply call the AddHours method:

myDateTime.AddHours(2).ToLongTimeString();
夏末 2024-11-14 16:45:29

myDateTime.ToShortTimeString() 将仅返回时间

,或者正如 Tejs 提到的,您可以使用 ToLongTimeString() 我认为它更适合您的要求。

要添加或减去小时数,您可以使用dateTime.AddHours(甚至负数小时),或者要减去小时数,您也可以使用dateTime.Subtract(要减去的时间)

myDateTime.ToShortTimeString() will return you only time

or as Tejs mentioned you can use ToLongTimeString() that I guess more suits your requirement.

For adding or subtracting hours you can use dateTime.AddHours(even hours in negative) or for subtracting you can also use dateTime.Subtract(time to subtract)

乖乖 2024-11-14 16:45:29

使用 timespan 方法的 .ToString() 方法可以让您以任何您想要的格式输出日期。请参阅http://msdn.microsoft.com/en-us/library/8kb3ddd4。 ASPX

Using the .ToString() method of the timespan method allows you to output the date in any format you want. See http://msdn.microsoft.com/en-us/library/8kb3ddd4.aspx

琴流音 2024-11-14 16:45:29
  1. 对于您的时区需求,请使用与这篇 MSDN 文章<中建议的方法类似的方法/a>.尤其:


    1. 使用ConvertTimeToUtc 在执行任何算术之前获取 UTC 时间。
    2. 执行所需的算术运算。
    3. 使用 TimeZoneInfo.ConvertTime 转换回当地时间.
  2. 要仅获取 DateTime 的时间部分,请使用 DateTime.ToShortTimeString()。请注意,这是文化感知的,因此如果您想要固定格式,请考虑使用 < code>DateTime.ToString() 指定格式。
  1. For your time zone needs, use an approach similar to the one suggested in this MSDN article. Notably:
    1. Use ConvertTimeToUtc to get UTC time before performing any arithmetics.
    2. Perform required arithmetics.
    3. Convert back to local time using TimeZoneInfo.ConvertTime.
  2. To get just the time part of a DateTime, use DateTime.ToShortTimeString(). Note that this is culture-aware, so if you want a fixed format, consider using DateTime.ToString() to specify a format.
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文