整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:

福虎迎春!“萌小虎”送来拜年表情包+H5拼图

福虎迎春!“萌小虎”送来拜年表情包+H5拼图

源:人民日报中央厨房-蓝蓝天工作室

虎年新春的钟声

即将敲响

在中国文化中

虎是勇敢和力量的象征

今天,从东北虎豹国家公园跃来的

冰雪健将“萌小虎”

前来陪您过年

为您送上专属新春祝福!

(识别海报中二维码,下载表情包)

虎年大吉~

“萌小虎”给您拜大年啦!

吃顿饺子,暖胃暖心,辞旧迎新~

新年来到,给大家发个红包~

喜迎虎年,共贺新春!

虎年接虎福,新年更幸福~

嗷呜~虎年氛围组已上线!

(#°Д°)!

虎虎生风加油干,生龙活虎过大年!

给努力的你手动点赞,棒棒哒~

哼~我瞧瞧谁没把本虎收藏!

大老远赶来的“萌小虎”

只带着一大包表情包来表“情”

那怎么够?

福虎送福

当然要诚意满满!

长按下图二维码并识别

或用手机微信直接扫码

您将亲手拼出一只“萌小虎”

解锁虎年聊天必备虎知识

拿到更多惊喜

眼明手快的你

将拥有虎年专属祝福

爱“拼”就会赢!快快接福吧!

(H5链接:http://v.people.cn/GB/177969/441849/index.html)

“萌小虎”的祝福,大家可要收好哟!

生龙活虎,龙腾虎跃

福虎迎春,虎到福到

快把新年海报晒到朋友圈吧

一起迎春接福

共祝国泰民安!

来源|人民网、人民日报中央厨房-蓝蓝天工作室

支持单位:国家林业和草原局(国家公园管理局)宣传中心、 东北虎豹国家公园管理局

本文来自【人民日报中央厨房-蓝蓝天工作室】,仅代表作者观点。全国党媒信息公共平台提供信息发布传播服务。

ID:jrtt

年一度的中秋节马上就到啦,小伙伴们收到月饼了吗。

记得我的学生时代,邮件祝福还风靡过一段时间,打开QQ邮箱,各种转发邮件和祝福邮件,现在想想都觉得有点久远了。
相信小伙伴们也都用过群发邮件的功能,例如QQ邮箱,163邮箱等都有提供这种功能,直接发送或者密送都可以。但都会存在一个问题,就是一键发送时,邮件内容都是一样的,无法针对收件人而有个性化的称呼。针对这个需求,我们可以做一个群发邮件的桌面端软件。

我们首先整理下我们需要实现的最简单的功能:

  • 可以输入并记住账号和密码
  • 可以导入收件人信息
  • 可以自由选择收件人
  • 邮件内容可以针对收件人进行个性化修改,可以输入邮件标题,可以附带图片
  • 有发送邮件的功能

需求整理完成,说干就干。

布局

首先新建一个窗体,定义为MainForm。将MainForm的初始状态修改为一打开就最大化。

this.WindowState=FormWindowState.Maximized;

我们可以用GroupBox将Mainform划分为三部分,“登录信息”,“收件人信息”,还有“邮件内容”,如图:

Tips:因为我们默认窗口最大化,所以我们需要先设置三个GroupBox的Anchor属性,依次分别为“Top,Bottom,Left”,“Top,Bottom,Left”和“Top,Bottom,Left,Right”。这样GroupBox就会随窗口大小变化而不至于打乱布局。

控件

划分布局之后,在每一个GroupBox中增加我们需要的控件。

“登录信息”

两个Label(标注“账号”与“密码”);

两个TextBox(用来输入账号与密码);

两个CheckBox(一个用来记住账户密码,一个用来隐藏密码)。

用TextBox输入密码时,我们可以设置TextBox的UseSystemPasswordChar属性为True,则我们输入的文字都会以密文显示。与CheckBox联动,默认勾选CheckBox时,密码以符号显示,不勾选CheckBox时,密码以明文显示。

代码如下:

private void cbShowPwd_CheckedChanged(object sender, EventArgs e)
 {
       if (this.cbShowPwd.Checked==true)
            {
                this.tbPassword.UseSystemPasswordChar=false;
                
            }
            else
            {
                this.tbPassword.UseSystemPasswordChar=true;
            }
}

实际效果如图:

记住账户与密码涉及本地存储,我们后面具体写代码时再来实现这个功能,先按住不提。


“收件人信息”

一个CheckBox(全选功能);

一个CheckListBox(用来显示导入的收件人信息);

两个Button(一个用来导入文件,一个用来确认选择收件人);

一个Label(用来显示已选择的收件人数量)。

关于CheckListBox的相关设置与全选功能具体可以查看我的上一篇文章(「Winform开发小技巧05」批量操作单号-CheckListBox)

全选功能代码:

private void cbSelectAll_CheckedChanged(object sender, EventArgs e)
 {
   //全选功能
            if (this.cbSelectAll.Checked)
            {
                for (int i=0; i < this.clbReceivers.Items.Count; i++)
                {
                    if (!this.clbReceivers.GetItemChecked(i))
                        this.clbReceivers.SetItemChecked(i,true);
                }
            }
            else
            {
                for (int i=0; i < this.clbReceivers.Items.Count; i++)
                {
                    if (this.clbReceivers.GetItemChecked(i))
                        this.clbReceivers.SetItemChecked(i, false);
                }
            }
}

这里的操作逻辑是:点击Button导入收件人=>CheckListBox显示收件人=>全选=>Label显示已选人数=>点击Button确认选择,收件人数据传输到下一个部分“邮件内容”。

导入功能我们可以写一个方法,这里先暂时不写。

我们可以先解决Label的显示问题。Label显示选择人数时,需要根据CheckListBox中Item的实时勾选状态进行变化,这个比较有趣,我们可以在CheckListBox的Itemcheck事件中实现。

代码如下:

private void clbReceivers_ItemCheck(object sender, ItemCheckEventArgs e)
 {
            //这个事件是指示某项的选中状态将要被更改、在更改前会执行这个事件
            //所以checkedListBox.CheckedItems.Count获取的是更改之前的值           
            if (e.NewValue==CheckState.Checked)
            {

                this.lbSelectedCount.Text="已选:"+(this.clbReceivers.CheckedItems.Count + 1).ToString();

            }
            else
            {
                this.lbSelectedCount.Text="已选:" + (this.clbReceivers.CheckedItems.Count - 1).ToString();

            }
}

实际效果如图:(因为还没有数据,为了展示效果,我先手动输入一些数据)

“邮件内容”

两个Label;

两个TextBox(一个用来显示收件人,一个用来输入标题,显示收件人我们可以将其MultiLine属性设置为True,这样可以多行显示);

一个RichTextBox(用来输入正文内容,后期我们用Html来发送文件,RichTextBox方便我们输入段落及图片);

一个Button(用来确认发送邮件)。

效果如图:

至此,我们的布局就全部完成了!

但是大家又没有发现一个问题,由于Winfrom界面缩放问题,我们生成的界面有点模糊,很难看,针对这个问题,微软有专门的解决方案。

首先右键项目=>添加新建项=>添加应用程序清单文件。

打开app.manifest文件,取消application节点注释


打开App.config文件,添加节点EnableWindowsFormsHighDpiAutoResizing,值为true

此时我们重新按F5进行编译,可以发现界面分辨率正常了,瞬间好看不少有没有。

下篇文章,我们就开始正式编码了,或许可以赶上中秋给大家拜个晚年了,哈哈哈


如果各位觉得我写的对你有那么一点点帮助,欢迎一键三连~感激不尽~

有不到一个月,牛年春节就快到了。每到这个时候,各种新年的祝福语字体设计也大受欢迎,将这些祝福语用在海报、电商设计中,非常方便。

今天,我在站酷上看到了一组牛年祝福字体设计,觉得非常棒!关键是,这组字体是免费可商用的!下面,我就把这组字体分享给大家。

作者:志明刘

原文地址:

https://www.zcool.com.cn/work/ZNTAxNzQzODA=.html

网盘链接:

pan.baidu.com/s/1W8KgNv6cCWyIHJ9PPQvVCw

提取码:6666



这些字体都是手写的书法字体,有些字体加入了创意组合,增强了设计感和整体性。

如果你喜欢的话,就拿去吧!

最后,再次感谢原作者的辛勤付出!