今天主要复习了一下昨天学习的窗体小程序。主要会运用到控件的一些基本属性。

程序:

走马灯(要求是:使用两个窗体,两个窗体之间要传值,Form1传值给Form2,传入的字符串在Form2窗体上横向滚动)

* 首先是设定界面(txtname,txtpwd。第二个文本框txtname设置它的UseSystemPasswordChar属性为true,MaxLength设为6)

文本框的属性:UseSystemPasswordChar 指示编辑控件中的文本是否以默认的密码字符(“●”)显示。
        PasswordChar    指示将为单行编辑控件的密码输入显示的字符。(你可以任意输入想要显示的密码字符,比如 *,?)

MaxLength   指定可以在编辑控件中输入的最大字符数

Timer控件的属性:主要是将Enabled属性设为True;Interval(事件的频率,以毫秒为单位)设为500;这里主要用来控制用户登录的次数,若超过三次,则等待500毫秒后才可以重新输入

Form1窗体的主要代码:

private void Form1_Activated(object sender, EventArgs e)

        {
this.txtuser.Focus();
} int i = 0;
private void btnlogin_Click(object sender, EventArgs e) {
string user = this.txtuser.Text.Trim();
string pwd = this.txtpwd.Text.Trim();
if (i>=3)
{
btnlogin.Enabled = false;
} if (string.IsNullOrEmpty(user)) {
MessageBox.Show("用户名不正确,请重新输入");
++i;
}
else if (string.IsNullOrEmpty(pwd))
{
MessageBox.Show("密码不能为空,请重新输入");
++i; }      Form2 fm = new Form2(user);
                fm.Show();
                this.Hide();//隐藏窗体
            } } private void timer1_Tick(object sender, EventArgs e)
{
btnlogin.Enabled = true;
}

Form2窗体的界面,定义一个Label控件来接收由Form1传来的值(用户名)

这里Timer控件的作用是来控制字符串滚动的速度。

代码是:

       string name = string.Empty;

        public Form2(string users)

        {
InitializeComponent();
name = users + "您好,welcome to china ";
} private void timer1_Tick(object sender, EventArgs e) {
name = name.Substring(1) + name.Substring(0, 1);
this.lblname.Text = name; } private void btnclose_Click(object sender, EventArgs e) {
this.Close();
}

实现效果:

类似“打地鼠”的小程序

Form初始界面,添加了一个button按钮。

主要代码:

运行效果

好了,今天就先暂时学到这里了,经过这两天的学习感觉windows form窗体程序比控制台简单些,可能是因为在学校里我们基本上学的就是在窗体上通过拖控件来完成的一些小程序,很少学控制台程序。正因为这,以后我要更加努力学好了。加油,Enze!

C#中“走马灯”和类似“打地鼠”的小程序(Seventeenth Day)的更多相关文章

  1. 类似微信聊天小程序-网易云信,IM DEMO小程序版本

    类似微信聊天小程序-网易云信,IM DEMO小程序版本 代码地址: https://github.com/netease-im/NIM_Web_Weapp_Demo 云信IM DEMO 小程序版本 ( ...

  2. vue中的绑定class和微信小程序中的绑定class的区别

    微信小程序 小程序里面的class与style绑定,遵循HTML特性绑定,有关于HTML绑定.在进行class与style绑定时,可以直接绑定,也可以带上逻辑与,或者三元运算进行条件控制 JS dat ...

  3. 一个类似repo的小程序

    #! /usr/bin/env python # -*- coding: utf-8 -*- # usage : python EasyRepo.py -u "13051041" ...

  4. 微信小程序中的bindTap事件(微信小程序开发QQ群:604788754)

    bindTap对应的绑定事件, 第一个:wx.navigateTo wx.navigateTo({ url:"../content/content" }) 第二个:wx.redir ...

  5. 微信小程序在开发中遇到的问题与解决方法

    1.  √ 这种错误多半是该js文件中没有Page这个方法,就算是空的js也必须要把Page({ })写上去 2.  √ 这种错误多半是该json文件没有内容,所以必须要加上{ },就算是空内容也要加 ...

  6. 小程序开发过程中常见问题[微信小程序、支付宝小程序]

    目录 一.样式中如何使用background-image呢? 二.使用自适应单位rpx类似于rem,布局尽量使用flex布局 三.万能的{{双大括号,用于在模版中输出变量 四.你想要的基础组件和API ...

  7. 微信小程序开发教程 #043 - 在小程序开发中使用 npm

    本文介绍了如何在微信小程序开发中使用 npm 中包的功能,大大提高微信小程序的开发效率,同时也是微信小程序系列教程的视频版更新. 微信小程序在发布之初没有对 npm 的支持功能,这也是目前很多前端开发 ...

  8. 【微信小程序项目实践总结】30分钟从陌生到熟悉 web app 、native app、hybrid app比较 30分钟ES6从陌生到熟悉 【原创】浅谈内存泄露 HTML5 五子棋 - JS/Canvas 游戏 meta 详解,html5 meta 标签日常设置 C#中回滚TransactionScope的使用方法和原理

    [微信小程序项目实践总结]30分钟从陌生到熟悉 前言 我们之前对小程序做了基本学习: 1. 微信小程序开发07-列表页面怎么做 2. 微信小程序开发06-一个业务页面的完成 3. 微信小程序开发05- ...

  9. 在小程序开发中使用 npm

    微信小程序在发布之初没有对 npm 的支持功能,这也是目前很多前端开发人员在熟悉了 npm 生态环境后,对微信小程序诟病的地方. 微信小程序在 2.2.1 版本后增加了对 npm 包加载的支持,使得小 ...

随机推荐

  1. Cloning Java objects using serialization

    Sometimes you need to clone objects, and sometimes you can't use their clone method, and sometimes s ...

  2. (13)[Xamarin.Android] 不同分辨率下的图片使用概论

    原文 [Xamarin.Android] 不同分辨率下的图片使用概论 设计Android App的时候,其尺寸众多也是一个挑战之一.要针对不同尺寸设计Android App时,就要先来了一下dpi(d ...

  3. WPF中的触发器简单总结

    原文 http://blog.sina.com.cn/s/blog_5f2ed5cb0100p3ab.html 触发器,从某种意义上来说它也是一种Style,因为它包含有一个Setter集合,并根据一 ...

  4. centos扩容(pv,vg,lv)

    preFace: (应用场景需求分析)

  5. python SyntaxError: Non-ASCII character '\xd5' in file

    我使用的是python2.7, 在pycharm想运行程序,但是却报出了SyntaxError: Non-ASCII character '\xd5' in file 原因是因为源码中包含了中文注释, ...

  6. HDOJ2031进制转换

    项目做久了,我发现自己对代码的实现能力越来越差劲了!经过前一段时间找工作的经历就能够明显感觉的到自己的代码熟练度不够!因此,今后要多加练习.要想做好一个优秀的程序猿就要多写程序,多思考. ★结题思路 ...

  7. 能够免费做商业站点的CMS讨论

    眼下国内使用过PHPCMS   DEDECMS织梦    科讯CMS  帝国.Discuz.Ecshop等,可是他们都是个人非盈利免费,商业.政府.机构授权收费. 使用什么CMS能够免费做商业站点呢? ...

  8. Unity3D游戏开发从零单排(五) - 导入CS模型到Unity3D

    游戏动画基础 Animation组件 Animation组件是对于老的动画系统来说的. 老的动画形同相应的动画就是clip,每一个运动都是一段单独的动画,使用Play()或CrossFade(),直接 ...

  9. Android开源资料大集合_架构&UI

    1. Anroid开源框架架 https://github.com/kymjs/KJFrameForAndroidhttp://www.oschina.net/p/thinkandroid http: ...

  10. C#实现文件批量重命名源码下载

    本文要实现的功能是 文件批量重命名,当选择一个文件夹时,通过操作可以把文件夹下面所有文件进行重命名.建立了HoverTreeBatch项目. 然后 定义文件夹信息: DirectoryInfo _Th ...