好玩的WPF第二弹:电子表字体+显示系统时间

效果呢就是这么个效果,难度相较于上一篇也要简单许多。

首先是定义一个TextBlock如下。

<Grid>
     <TextBlock Name="tBlockTime" HorizontalAlignment="Center"
         VerticalAlignment="Center" FontSize="68" Foreground="Green"/>
</Grid>

后台代码如下:

private DispatcherTimer dispatcherTimer;

public MainWindow()
{
     InitializeComponent();

     dispatcherTimer = new System.Windows.Threading.DispatcherTimer();
     // 当间隔时间过去时发生的事件
     dispatcherTimer.Tick += new EventHandler(ShowCurrentTime);
     dispatcherTimer.Interval = new TimeSpan(0, 0, 0, 1);
     dispatcherTimer.Start();
}

public void ShowCurrentTime(object sender, EventArgs e)
{
      //获得星期
      //this.tBlockTime.Text = DateTime.Now.ToString("dddd", new System.Globalization.CultureInfo("zh-cn"));
      //this.tBlockTime.Text += "\n";

      //获得年月日
      //this.tBlockTime.Text = DateTime.Now.ToString("yyyy:MM:dd");   //yyyy年MM月dd日
      //this.tBlockTime.Text += "\n";

      //获得时分秒
      this.tBlockTime.Text = DateTime.Now.ToString("HH:mm:ss");
}

注意在这个时间的设置时,第一步显示的时间是”=”,随后都是”+=”。比如说要先显示星期,再显示时分秒,就是这样的:

//获得星期
this.tBlockTime.Text = DateTime.Now.ToString("dddd", new System.Globalization.CultureInfo("zh-cn"));
this.tBlockTime.Text += "\n";

//获得时分秒
this.tBlockTime.Text += DateTime.Now.ToString("HH:mm:ss");

然后还需要字体,然而字体并不可能是写出来的……我们都需要需要引用资源。

<Window x:Class="WpfApplication2.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="MainWindow"
        Width="500" Height="200"
        WindowStyle="None"
        AllowsTransparency="True"
        Background="Black">

    <Window.Resources>
        <Style x:Key="QuartzMSFont">
            <Setter Property="TextElement.FontFamily" Value="Resources/#Quartz MS"/>
        </Style>
    </Window.Resources>

    <Grid>
        <TextBlock Name="tBlockTime" Style="{DynamicResource QuartzMSFont}"
                   HorizontalAlignment="Center"
                   VerticalAlignment="Center" FontSize="68" Foreground="Green"/>
    </Grid>

</Window>

这里我只是给大家一个启发,如果系统自带的字体已经不能满足你的艺术感,你完全可以另外找字体。甚至也可以创造字体,近来谷歌苹果都在做这个。

我已经把字体放到项目中了,需要源码/字体的童鞋直接留邮箱……

这一篇内容不多,也算不上精彩,但童鞋们可以看看上一篇:好玩的WPF第一弹:窗口抖动+边框阴影效果+倒计时显示文字 ,也可以今明天再来看看第三篇~




感谢您的访问,希望对您有所帮助。 欢迎大家关注、收藏以及评论。



为使本文得到斧正和提问,转载请注明出处:

http://blog.csdn.net/nomasp


时间: 2024-11-07 08:13:22

好玩的WPF第二弹:电子表字体+显示系统时间的相关文章

好玩的WPF第二弹:电子表字体显示时间+多彩呼吸灯特效button

我们先来看看Quartz MS字体动态显示系统时间的效果,难度相较于上一篇也要简单很多. 首先是定义一个TextBlock例如以下. <Grid> <TextBlock Name="tBlockTime" HorizontalAlignment="Center" VerticalAlignment="Center" FontSize="68" Foreground="Green"/>

MFC显示系统时间

准备工作: 1.在视图中右击->类向导->消息->找到消息WM_TIMER,同事右侧会出现消息的响应函数OnTimer,双击OnTimer 一.标题栏显示系统时间 1.在BOOL XXXDlg::OnInitDialog()函数中添加定时器SetTimer(1,1000,NULL);//第一个参数是定时器ID,你随意定,但是如果不能喝其他定时器的ID重复,第二个参数是时间(ms)就是每隔多长时间执行一次,第三个参数一般为NULL,为NULL是表示使用OnTimer为响应函数,当然你也可以

实时显示系统时间

1.概述 在浏览很多网站时,都会发现在网站中加入了显示当前系统时间的功能,在网页中显示当前系统时间,不仅可以方便浏览者掌握当前时间,而且还美化了网页. 2.技术要点 利用Date对象来实现.首先创建一个表示当前系统时间的Date()对象,然后通过Date对象的getXxx()方法获得当前系统时间的年.月.日.小时.分.秒和星期的值,接下来将获得的这些值组合成一个日期时间字符串,并将日期时间字符串设置成为<div>标签的内容,最后通过window对象的setTimeout()函数每隔1秒调用一个

关于时间的操作(JavaScript版)——年月日三级联动(默认显示系统时间)

这个功能是大学时自己使用纯JavaScript写的,没有借助Jquery,呵呵呵,看起来有点繁琐,可是在当时依稀的记得功能实现后自己好好的高兴一把了呢,从现在来看那时候的自己是多么的幼稚.多么的无知: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head> <title>年月日三级联动(默认显示系统时间)</title> <

html代码中显示系统时间

可以显示系统的静态时间和动态时间 1,静态时间 <script type="text/javascript"> var myDate = new Date(); document.write(myDate.toLocaleString()) </script> 静态时间显示 2,动态时间显示 <script> function show(){ var date = new Date(); //日期对象 var now = "";

好玩的WPF第一弹:窗口抖动+边框阴影效果+倒计时显示文字

大家一进到博客就应该看到这张GIF了吧--好吧,今天不是星期一-- 那么就来一起做做这个效果啦!看完记得点赞哦~ 新建一个WPF项目 如果新建WPF项目应该不用我说了吧,在C#下面找找就好了. MainWindow.xaml 在初始的Window下添加如下属性: x:Name="mainWindow" WindowStartupLocation="CenterScreen" WindowState="Normal" WindowStyle=&qu

找BUG第二弹——出具发票日期和时间创建日期不一致问题解决方案

现在负责的项目,有个已发货退货业务,要求是开票的时间节点是退货交货退货单创建之后,这就会造成这么一个问题,就是创建退货SO和退货开票的时间节点会有差别.如下图: 所以客户想把这两个日期修改一致,我给出的方案有以下两种: 从配置上进行更改: 查看该开票类型ZRE1,它是参照SO进行的开票,并找其对应的复制控制:地址如下: Spro  --> SAP参考IMG  --> 销售和分销 --> 开票 --> 开票凭证 --> 维护开票凭证的复制规则 --> 复制控制: 销售凭证

js实时显示系统时间

刚刚在做后台页面最上面要动态显示时间刚写了这个代码 将这段代码加入<head></head> <!--时间显示代码 --><script>function clockon(contentDate){    var now = new Date();    var year = now.getYear();    var month = now.getMonth();    var date = now.getDate();    var day = now.

JavaScript显示系统时间

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-