A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© wq12342008 初级黑马   /  2014-4-15 19:52  /  1316 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 wq12342008 于 2014-4-16 14:43 编辑

页面上有一张图片(PictureBox,在Image属性中加载图片),默认是隐藏的(Visible=False),用户在文本框中输入身份证号(131226198105223452),点击按钮,如果年龄大于18岁则显示图片(Visible=True),否则提示年龄太小。取当前年份:DateTime.Now.Year。

5 个回复

倒序浏览
  1. public partial class Form1 : Form
  2.     {
  3.         //页面上有一张图片(PictureBox,在Image属性中加载图片),默认是隐藏的(Visible=False),用户在文本框中输入身份证号(131226198105223452)
  4.         //,点击按钮,如果年龄大于18岁则显示图片(Visible=True),否则提示年龄太小。取当前年份:DateTime.Now.Year。
  5.         public Form1()
  6.         {
  7.             InitializeComponent();
  8.         }

  9.         private void btnShow_Click(object sender, EventArgs e)
  10.         {
  11.             long IDnum = Convert.ToInt64(txtID.Text);//用IDnum接收txtID的值
  12.             long birthyear = IDnum % 1000000000000 / 100000000;//因为设定txtID的最大长度为18,所以这么求出生年月。
  13.             int nowyear = DateTime.Now.Year;
  14.             if (nowyear - birthyear > 18)
  15.             {
  16.                 pb.Visible = true;
  17.             }
  18.             else
  19.             {
  20.                 pb.Visible = false;
  21.                 MessageBox.Show("年龄太小");
  22.             }
  23.         }
  24.     }
复制代码


上面这些代码都是写在Form1.cs中   
我把输入身份证的那个textbox的属性设置为18位,用的取余和除来求出身份证中的年月日,貌似是最笨的方法了
我用的是WINFORM做的这道题,图片用的是PictureBox这个控件,然后在Image属性中插入一张图片

希望能帮助到你

评分

参与人数 2技术分 +1 黑马币 +2 收起 理由
wq12342008 + 2 赞一个!
czwanglei + 1

查看全部评分

回复 使用道具 举报
新建一个窗体应用程序 在上面放一个image类型的空间
选择好图片以后 把visible属性设为false;
一个textbox控件 一个 button控件 textbox用来让用户输入身份证号
可以在之前放一个lable控件用来提示
写button的click事件代码:
用textbox.text的substring方法用来截取 用户输入的数字
datetime.now.year 方法可以取一个当前年份的int类型的值
根据用户输入的判断是否成年
用if判断 如果大于等于18就 让image图片的VISIBLE属性设为true;
反之则是false;
以上这种是不加限制用户输入 无判断身份证格式 等等的
如果需要实现 请自行添加
回复 使用道具 举报
正则判断
回复 使用道具 举报
windowsform基础,认真看视频就会了。。
回复 使用道具 举报
多谢大家帮助
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马