一、winform基础 

客户端应用程序:C/S

客户端应用程序可以操作用户电脑中的文件,代码要在用户电脑上执行,吃用户电脑配置。

窗体是由控件和属性做出来的

控件:窗体里所放的东西。“视图”中的“工具箱”   鼠标左键按住控件拖到窗体中去。

选中要操作的空间右键选择“属性”,来操作当前控件的属性

Label  在窗体中显示的文字。

Button  按钮

TextBox  文本框

CheckBox  多选

RadionButton  单选

ComboBox   下拉选择

给按钮设置点击事件:

在按钮的属性界面中选择事件(小闪电)

在事件的方法名出双击就会导到事件方法界面来进行方法编写。

打印  MessageBox.Show("");括号里边必须放string类。

查看按钮的选中状态,用Checked属性返还一个bool类。

查看下拉列表的选中状态。

查看文本框中输入的内容。

 想要打印的内容换行,在字符串中输入\r。

 二、登录窗口

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data.SqlClient; namespace WindowsFormsApplication1.App_Code
{
public class UsersData
{
SqlConnection conn = null;
SqlCommand cmd = null; public UsersData()
{
conn = new SqlConnection("server=.;database=Data0216;user=sa;pwd=123");
cmd = conn.CreateCommand();
} //查询是否存在该帐号
public bool SelectHasName(string name)
{
bool has = false;
cmd.CommandText = "select * from Users where UserName=@a";
cmd.Parameters.Clear();
cmd.Parameters.AddWithValue("@a",name);
conn.Open();
SqlDataReader dr = cmd.ExecuteReader(); if (dr.HasRows)
{
has = true;
} conn.Close();
return has;
} //如果存在,查询该用户下对应的密码
public string SelectPassWord(string name)
{
string end=""; cmd.CommandText = "select PassWord from Users where UserName=@a";
cmd.Parameters.Clear();
cmd.Parameters.AddWithValue("@a",name); conn.Open();
SqlDataReader dr = cmd.ExecuteReader();
dr.Read();
end = dr["PassWord"].ToString();
conn.Close(); return end;
}
}
}
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using WindowsFormsApplication1.App_Code; namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
} private void Form1_Load(object sender, EventArgs e)
{
} private void button1_Click(object sender, EventArgs e)
{
string username = textBox1.Text;
string password = textBox2.Text; UsersData ud = new UsersData();
bool HasName = ud.SelectHasName(username); //如果帐号存在
if (HasName)
{
//查询该帐号对应的密码是否与用户输入的一致
if (password == ud.SelectPassWord(username))
{
MessageBox.Show("帐号密码匹配成功!");
}
else MessageBox.Show("您输入的密码不正确!");
} else MessageBox.Show("您输入的账户不存在!"); }
}
}

三、窗口属性

1、窗体种类

(1)记事本类型   默认的,可最大最小话可随意拖拽大小

(2)计算器类型  不可随意拖拽大小,不可最大化(窗体属性最大化不可用:MaximizeBox改为False。不可拖拽大小:FormBorderStyle:FixedSingle)

(3)无边框类型  FormBorderStyle:None

(4)不规则类型  BackgroundImage设置一张背景图片导入图片时选择“项目资源文件”   BackgroundImageLayout:Stretch图片布局类型:任意拉伸

TransparencyKey:white     窗体上让白色变为纯透明。  FormBorderStyle:None 去掉边框

(5)置顶类型  QQ类型,层级高   TopMost:True

 2、要记住的窗体属性

+ 布局
- AutoScroll   如果窗体中内容没有显示完整就会出现滚动条
- MaximumSize  窗体最大尺寸
- MinimumSize   窗体最小尺寸
- Size  窗体当前尺寸
- StartPosition - 窗体启动位置。记住两个值CenterScreen在屏幕中间显示。CenterParent在父级窗口的中间显示。
- WindowState  窗体初始化可视状态,初始最大化/最小化

+ 窗口样式
- ControlBox  最大最小化、关闭按钮隐藏
- Icon  窗体小图标。网上在线生成Icon小图标
- MaximizeBox   设置最大化可用不可用
- MinimizeBox    设置最小化可用不可用
- Opacity    透明度。0%是纯透明
- ShowIcon   显示图标
- ShowInTaskbar  任务栏显示或隐藏
- TopMost  层级设置
- Tran....Key   让窗体上哪一种颜色变为透明

+ 设计

- Name  程序看的这个窗口的名字

+ 外观
- BackColor   背景色
- BakcgroundImage   背景图片
- BackgroundImageLayout  背景图布局样式
- Cursor  鼠标在窗体中的显示类型
- Font  字体
- ForeColor   前景色
- FormBorderStyle   窗体边框样式
- Text  显示的内容

+ 杂项
- AcceptButton   指定一个按钮一按回车就等于按下按钮
- CancelButton   指定一个按钮按下ESC就等于按下按钮

3、恶搞程序
(1)窗体启动最大化
(2)去掉边框
(3)设置置顶
(4)不在任务栏显示
(5)不在任务管理器中显示

【2017-04-24】winform基础、登录窗口、窗口属性的更多相关文章

  1. SNS团队第三次站立会议(2017.04.24)

    一.当天站立式会议照片 本次会议主要内容:汇报工作进度,根据完成情况调整进度 二.每个人的工作 成员 今天已完成的工作 明天计划完成的工作 罗于婕 相关数据库文件建立起来  完善数据库文件 龚晓婷 研 ...

  2. js制作带有遮罩弹出层实现登录小窗口

    要实现的效果如下 点击“登录”按钮后,弹出登录小窗口,并且有遮罩层(这个名词还是百度知道的,以前只知道效果,却不知道名字) 在没有点击“登录”按钮之前登录小窗口不显示,点击“登录”按钮后小窗口显示,并 ...

  3. WinForm程序启动控制台窗口Console

    本文转载:http://blog.csdn.net/oyi319/article/details/5753311 2.WinForm程序和控制台窗口Console 如果你调试过SharpDevelop ...

  4. 黑马程序员+Winform基础(上)

    黑马程序员+Winform基础 ---------------<a href="http://edu.csdn.net"target="blank"> ...

  5. 【转】WinForm基础

    winform基础 先修基础:C#语法基础和面向对象编程 1.Winform创建解决方案 2.Winform窗体 3.MessageBOx 4.Winform登录.控制软件只运行一次.回车登录 5.W ...

  6. iOS静态库.a总结(2017.1.24增加脚本打包方法)

    修改于:2017.1.24 1.什么是库? 库是程序代码的集合,是共享程序代码的一种方式 2.根据源代码的公开情况,库可以分为2种类型 a.开源库 公开源代码,能看到具体实现 ,比如SDWebImag ...

  7. 自动化kolla-ansible部署ubuntu20.04+openstack-victoria之基础配置-04

    自动化kolla-ansible部署ubuntu20.04+openstack-victoria之基础配置-04 欢迎加QQ群:1026880196 进行交流学习 近期我发现网上有人转载或者复制原创博 ...

  8. JavaSE学习总结第04天_Java基础语法3

      04.01 选择结构switch语句的格式及其解释 switch语句的格式: switch(表达式) {    case 值1:语句体1;break;    case 值2:语句体2;break; ...

  9. 2017 Android 面试题 [ 基础与细节 ]

    2017 Android 面试题 [ 基础与细节 ] 感谢@chuyao抛出的这些问题,平时业务代码写多了,很多基础的东西变得含糊不清了,这次裸辞出来找工作确实没有之前顺利,顺便求上海Android开 ...

随机推荐

  1. KoaHub平台基于Node.js开发的Koa的rewrite and index support插件代码详情

    koa-static-server Static file serving middleware for koa with directory, rewrite and index support k ...

  2. 腾讯云数据库团队:浅谈如何对MySQL内核进行深度优化

    作者介绍:简怀兵,腾讯云数据库团队高级工程师,负责腾讯云CDB内核及基础设施建设:先后供职于Thomson Reuters和YY等公司,PTimeDB作者,曾获一项发明专利:从事MySQL内核开发工作 ...

  3. 3408: [Usaco2009 Oct]Heat Wave 热浪

    3408: [Usaco2009 Oct]Heat Wave 热浪 Time Limit: 3 Sec  Memory Limit: 128 MBSubmit: 67  Solved: 55[Subm ...

  4. 容斥原理及SQL in关键字在EF中的应用

    突然意识到文字的重要性,于是开始写了第一个篇博客,博客目的紧紧为记录,以便温故. 同时也希望抛砖能达到引玉的作用,欢迎各位来发表自己的感想与想法,以此达到相互学习促进! 背景: 在做百度地图电子围栏的 ...

  5. 【SSH项目实战三】脚本密钥的批量分发与执行

    [SSH项目实战]脚本密钥的批量分发与执行 标签(空格分隔): Linux服务搭建-陈思齐 ---本教学笔记是本人学习和工作生涯中的摘记整理而成,此为初稿(尚有诸多不完善之处),为原创作品,允许转载, ...

  6. fopen中的mode(20161115)

    mode mode 参数指定了所要求到该流的访问类型.可以是以下: fopen() 中 mode 的可能值列表 mode 说明 'r' 只读方式打开,将文件指针指向文件头. 'r+' 读写方式打开,将 ...

  7. curl javaSSm框架中传入json数组的格式方法

    curl与java结合传入get.post,head请求, 比如: curl的地址: curl -l 127.0.0.1:8080/spacobj/core/do?acid=100 -H " ...

  8. iOS开发之Block

    1.定义 (1) Block是OC中的一种数据类型,在iOS开发中被广泛使用 (2) ^是Block的特有标记 (3) Block的实现代码包含在{}之间 (4) 大多情况下,以内联inline函数的 ...

  9. iOS开发之数据存储之XML属性列表(plist)归档

    1.概述 “归档”意思是持久化存储数据.plist文件是一种XML格式的文件,拓展名为plist.如果对象是NSString.NSDictionary.NSArray.NSData.NSNumber等 ...

  10. keepalive配置文件详解

    第一部分:全局定义块 1.email通知.作用:有故障,发邮件报警. 2.Lvs负载均衡器标识(lvs_id).在一个网络内,它应该是唯一的. 3.花括号“{}”.用来分隔定义块,因此必须成对出现.如 ...