一、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. C++ 构造函数或析构函数调用虚函数

    构造函数和析构函数中的虚函数 在执行基类构造函数时,对象的派生类部分是未初始化的.实际上,此时对象还不是一个派生类对象. 为 了适应这种不完整,编译器将对象的类型视为在构造或析构期间发生了变化.在基类 ...

  2. Lowest Common Ancestor of a Binary Tree leetcode

    Given a binary tree, find the lowest common ancestor (LCA) of two given nodes in the tree. According ...

  3. 每天一个Linux命令 9

    Linux常用命令: 压缩命令:gzip 解压命令:gunzip 压缩命令:zip  解压命令:unzip 压缩命令:bzip2  解压命令:bunzip2 压缩打包命令:tar 1.命令名称:gzi ...

  4. NSPredicate 查询/搜索

    IOS NSPredicate 查询.搜索   简述:Cocoa框架中的NSPredicate用于查询,原理和用法都类似于SQL中的where,作用相当于数据库的过滤取. 最常用到的函数 + (NSP ...

  5. java解析上传的excel

    file是一个File,是一个excel文件 得到文件流:InputStream in =  file.getInputStream() 需要引入的类 import jxl.Cell;import j ...

  6. Solr DateRangeField

    Solr DateRangeField 是solr5.0 实现的一个feature. 关于 DateRangeField 支持日期查询如  date_field:[2016-03-23 TO 2017 ...

  7. 开启SQL Server执行占用时间显示和逻辑读取次数显示

    两条命令 1:set statistics time on 这条命令会显示你编译这条语句和执行这条语句花多长时间 2.set statistics io on 这条命令会显示你逻辑读取了多少次数据库和 ...

  8. windows phone 8.1开发:文件选择器FileSavePicker

    上一篇文章小梦分享了文件选择器FileOpenPicker的用法,这篇文章我们继续分享FileSavePicker的用法,FileSavePicker的用法几乎和FileOpenPicker用法一模一 ...

  9. TCP协议之三次握手与四次挥手

    TCP协议是TCP/IP体系中核心一个协议,该协议比起IP协议,ICMP协议,UDP协议都更复杂,因此这篇文章主要分析TCP协议在建立连接和断开连接的时候,状态转移以及报文段的内容. 下面,先放一张T ...

  10. Android开发之AChartEngine的使用

    下面附上代码加注解 package com.example.com.my_achartnegine; import android.content.Context; import android.gr ...