黑马程序员+Winform基础(上)
黑马程序员+Winform基础
---------------<a href="http://edu.csdn.net"target="blank">ASP.Net+Android+IOS开发</a>、<a href="http://edu.csdn.net"target="blank">.Net培训</a>、期待与您交流!-------------
- 控件:Button 按钮,TextBox 文本框, Label 标签,RadioButton 单选按钮,CheckButton 复选框 ,ListBox 列表框 ,PictureBox 图片框,ComboBox 下拉列表框
- 属性:Text:文本框中输入的值 ,Name:通过name来操作对象,Form.Text:窗体的标题,ForeColor:前景色,TextAlign:文本对齐,Image 图片,PasswordChar:密码文本 ,MultiLine 多行文本,Items 数据项,DropDownStyle:控制组合框的外观和功能,SelectItem 选中的项,SelectIndex 选中项的索引
- string.Format(“{0},你好”,textBox1.Text); //设置输出格式
- 方法:Form.Hide():对象隐藏,TextBox. AppendText()附加文本,
- 事件:Click:点击, SelectedIndexChanged 选择项发生改变
6.练习:求和
/// <summary>
/// 求和
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btnAdd_Click(object sender, EventArgs e)
{
string num1 = txtnum1.Text;
string num2 = txtnum2.Text;
int i1,i2;
if (!int.TryParse(num1,out i1))//转换成int
{
MessageBox.Show("第一个数不合法!");
txtnum1.Text = "";//数字不合法,清空文本框
}
else if (int.TryParse(num2, out i2) == false)
{
MessageBox.Show("第二个数不合法!");
txtnum2.Text = "";
}
else
{//求和输出
txtsum.Text = (i1 + i2).ToString();
}
}
7. 练习:核对Email,分析出用户名和域名
/// <summary>
/// 核对Email,分析出用户名和域名
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button1_Click(object sender, EventArgs e)
{
string email = txtEmail.Text;
string[] str = email.Split('@');
if (str.Length!=2)
{
MessageBox.Show("Email不合法");
txtEmail.Text = "";
}
else
{
MessageBox.Show(string.Format("用户名:{0} , 域名:{1}",str[0],str[1]));
}
}
8. 练习:两个数的累加
/// <summary>
/// 累加
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button2_Click(object sender, EventArgs e)
{
string num1 = textBox1.Text;
string num2 = textBox2.Text;
int i1, i2,sum=0;
if (!int.TryParse(num1,out i1))
{
MessageBox.Show("第一个数非法");
textBox1.Text = "";
}
else if (!int.TryParse(num2,out i2))
{
MessageBox.Show("第二个数非法");
textBox1.Text = "";
}
else
{ //判断
if (i1>=i2)
{
MessageBox.Show("第一个数必须小于第二个数");
textBox1.Text = "";
textBox2.Text = "";
}
else
{//累加
for (int i = i1; i <= i2; i++)
{
sum += i;
}
MessageBox.Show(string.Format("{0}累加到{1}和为{2}", i1, i2, sum));
}
}
}
9 .练习:
/// <summary>
/// 查看图片(满18岁可查看)
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button5_Click(object sender, EventArgs e)
{
string id = textBox4.Text;
//验证输入的身份证是否合法
if (id.Length!=18)
{
MessageBox.Show("身份证输入不合法");
textBox4.Text = "";
}
else
{//判断是否成年
if (DateTime.Now.Year-Convert.ToInt32(id.Substring(6,4))>18)
{
pictureBox1.Visible = true;
}
else
{
pictureBox1.Visible = false;
MessageBox.Show("年龄太小!");
}
}
}
10.练习:
/// <summary>
/// 向左移动
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button3_Click(object sender, EventArgs e)
{
string str = textBox3.Text;
this.textBox3.Text = str.Substring(1)+str.Substring(0,1);
}
/// <summary>
/// 向右移动
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button4_Click(object sender, EventArgs e)
{
string str = textBox3.Text;
this.textBox3.Text = str.Substring(str.Length-1)+str.Substring(0, str.Length - 1);
}
11.+=与appendText的区别
/// <summary>
/// 附加文本
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button6_Click(object sender, EventArgs e)
{
//textBox5.Text += DateTime.Now+"\r\n";//用于数据量小
textBox5.AppendText(DateTime.Now.ToString()+"\n");//数据量大
}
12.练习:登录错三次不让再登录
/// <summary>
/// 登录,失败超过3次后退出
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private int errorTime = 0;
private void btnsubmit_Click(object sender, EventArgs e)
{
string userName = txtname.Text.Trim();
string pwd = txtpwd.Text.Trim();
if (userName.Equals("admin", StringComparison.OrdinalIgnoreCase)&&pwd.Equals("888888"))
{
MessageBox.Show("登录成功!");
}
else
{
errorTime++;//不能用局部变量,用类字段才可达到计数的功能
if (errorTime>=3)
{
MessageBox.Show("错误三次,不允许再登录!");
//this.Close();
Application.Exit();//退出程序
}
else
{
MessageBox.Show("登录失败!");
}
}
}
---------------------- <a href="http://edu.csdn.net"target="blank">ASP.Net+Android+IOS开发</a>、<a href="http://edu.csdn.net"target="blank">.Net培训</a>、期待与您交流! ----------------------
详细请查看:<a href="http://edu.csdn.net" target="blank">http://edu.csdn.net</a>
黑马程序员+Winform基础(上)的更多相关文章
- 黑马程序员+Winform基础(下)
---------------<a href="http://edu.csdn.net"target="blank">ASP.Net+Android ...
- 黑马程序员+SQL基础(上)
黑马程序员+SQL基础 ---------------<a href="http://edu.csdn.net"target="blank">ASP ...
- 黑马程序员Java基础班+就业班课程笔记全发布(持续更新)
正在黑马学习,整理了一些课程知识点和比较重要的内容分享给大家,也是给自己拓宽一些视野,仅供大家交流学习,大家有什么更好的内容可以发给我 ,现有黑马教程2000G QQ 1481135711 这是我总 ...
- 黑马程序员_Java基础:网络编程总结
------- android培训.java培训.期待与您交流! ---------- Java语言是在网络环境下诞生的,它是第一个完全融入网络的语言,虽然不能说它是对支持网络编程做得最好的语言,但是 ...
- 黑马程序员----java基础笔记中(毕向东)
<p>------<a href="http://www.itheima.com" target="blank">Java培训.Andr ...
- 黑马程序员_Java基础组成
Java语言基础组成 2.1关键字 main不是关键字,但被JVM所识别的名称. 关键字的定义和特点 定义:被Java语言赋予了特殊含义的单词. 特点:关键字中所有字母都为小写. 用于定义数据类型的关 ...
- 黑马程序员_Java基础视频-深入浅出精华版--PPT 文件列表
\day01\code\第一章_Java概述.ppt;\day01\resource\资料\50道编程题(有精力的同学看看).doc;\day01\resource\资料\Sun_Java程序员认证考 ...
- 黑马程序员_Java基础:IO流总结
------- android培训.java培训.期待与您交流! ---------- IO流在是java中非常重要,也是应用非常频繁的一种技术.初学者要是能把IO技术的学透,java基础也就能更加牢 ...
- 黑马程序员——JAVA基础之泛型和通配符
------- android培训.java培训.期待与您交流! ---------- 泛型: JDK1.5版本以后出现新特性.用于解决安全问题,是一个类型安全机制. 泛型好处: ...
随机推荐
- javascript垃圾回收机制
js中垃圾回收的算法一般包括两种,一种是“清除标记”,另一种是“引用计数”,现在较为流行的是第一种. “引用计数”现在基本已经被抛弃,主要原因是会导致循环引用,从而导致严重的问题(ie9之前的版本DO ...
- 使用Supervisor管理Celery进程。
讲过一篇celery的,但是celery启动后并不是daemon的,在生产环境中这肯定是不可以的,那怎么办呢? 这就需要使用supervisor进行进程管理了,下面详细介绍. 一. superviso ...
- Linux操作系统奥秘02-系统引导(GRUB)
GRUB的加载流程 GRUB是GNU的一款多重引导软件.GRUB包含了3个重要的文件:stage1 ,e2fsstage1_5,stage2.这三个文件分别代表了GRUB运行的3个阶段. 1.stag ...
- Redmine2.5+CentOS6+Apache2
redmine是使用ruby开发的一款无任何商业限制且可自行部署的项目管理软件,其简洁的界面比较符合程序猿的定位,使用起来比较方便,由于我之前装3X没 成功,各版本之间的依存和配置都不一样,所以最后参 ...
- CSS声明顺序
CSS对元素样式进行声明,虽然一条规则中的声明可以按照任何顺序写出来,但是还是应该有个优先级的顺序. 如下的声明顺序摘抄自<CSS设计指南>,优先级顺序如下: display及相关声明 p ...
- Win7 64位系统 VS2010连接Oracle报错的问题
1,异常现象: TNS无法识别 2,异常分析:VS2010启动调试的时候,出现异常.但是使用IIS作为服务器的时候,是不会出现异常,也就是可以正常访问到数据库,后来分析是由于VS自带服务器ASP.NE ...
- Rstudio代码的快捷键
按tab键:有自动补全的功能 Ctrl+Enter:运行改行代码 Ctrl+1: 移动焦点到source编辑区 Ctrl+2: 移动焦点到控制台 Ctrl+enter Ctrl+L:删除该控制台的所有 ...
- P1159岳麓山上打水
P1159岳麓山上打水 https://vijos.org/p/1159 dfsID,第一次听说这东西,但是感觉不太靠谱啊. 一开始的时候,想到了排个序后,然后进行dp,如果要输出字典序最小其实还是可 ...
- Swift3.0基础语法学习<二>
对象和类: // // ViewController2.swift // SwiftBasicDemo // // Created by 思 彭 on 16/11/15. // Copyright © ...
- Linux档案与目彔的基本操作(查看与权限)
此文包含的命令: cd.pwd.mkdir.rmdir.rm.ls.cp.mv.cat.tac.more.less.head.tail.od.touch.umask.chattr.lsattr.fil ...