【2017-04-24】winform基础、登录窗口、窗口属性
一、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基础、登录窗口、窗口属性的更多相关文章
- SNS团队第三次站立会议(2017.04.24)
一.当天站立式会议照片 本次会议主要内容:汇报工作进度,根据完成情况调整进度 二.每个人的工作 成员 今天已完成的工作 明天计划完成的工作 罗于婕 相关数据库文件建立起来 完善数据库文件 龚晓婷 研 ...
- js制作带有遮罩弹出层实现登录小窗口
要实现的效果如下 点击“登录”按钮后,弹出登录小窗口,并且有遮罩层(这个名词还是百度知道的,以前只知道效果,却不知道名字) 在没有点击“登录”按钮之前登录小窗口不显示,点击“登录”按钮后小窗口显示,并 ...
- WinForm程序启动控制台窗口Console
本文转载:http://blog.csdn.net/oyi319/article/details/5753311 2.WinForm程序和控制台窗口Console 如果你调试过SharpDevelop ...
- 黑马程序员+Winform基础(上)
黑马程序员+Winform基础 ---------------<a href="http://edu.csdn.net"target="blank"> ...
- 【转】WinForm基础
winform基础 先修基础:C#语法基础和面向对象编程 1.Winform创建解决方案 2.Winform窗体 3.MessageBOx 4.Winform登录.控制软件只运行一次.回车登录 5.W ...
- iOS静态库.a总结(2017.1.24增加脚本打包方法)
修改于:2017.1.24 1.什么是库? 库是程序代码的集合,是共享程序代码的一种方式 2.根据源代码的公开情况,库可以分为2种类型 a.开源库 公开源代码,能看到具体实现 ,比如SDWebImag ...
- 自动化kolla-ansible部署ubuntu20.04+openstack-victoria之基础配置-04
自动化kolla-ansible部署ubuntu20.04+openstack-victoria之基础配置-04 欢迎加QQ群:1026880196 进行交流学习 近期我发现网上有人转载或者复制原创博 ...
- JavaSE学习总结第04天_Java基础语法3
04.01 选择结构switch语句的格式及其解释 switch语句的格式: switch(表达式) { case 值1:语句体1;break; case 值2:语句体2;break; ...
- 2017 Android 面试题 [ 基础与细节 ]
2017 Android 面试题 [ 基础与细节 ] 感谢@chuyao抛出的这些问题,平时业务代码写多了,很多基础的东西变得含糊不清了,这次裸辞出来找工作确实没有之前顺利,顺便求上海Android开 ...
随机推荐
- 2292: 【POJ Challenge 】永远挑战
2292: [POJ Challenge ]永远挑战 Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 553 Solved: 230[Submit][ ...
- CAEmitterLayer 粒子效果(发射器)
//创建Layer CAEmitterLayer *emitterLayer = [CAEmitterLayer layer]; //边框 emitterLayer.borderWidth = 1.0 ...
- C风格字符串和C++ string 对象赋值操作的性能比较
<<C++ Primer>> 第四版 Exercise Section 4.3.1 部分Exercise 4.2.9 习题如下: 在自己本机执行如下程序,记录程序执行时间: # ...
- protected private public 的区别
1.public,protected,private是Java里用来定义成员的访问权限的,另外还有一种是"default",也就是在成员前不加任何权限修饰符.如: publi ...
- Cordova原理一
我们知道cordova中js要和native通信都是通过 cordova plugin来实现的.如果我们自己创建一个cordova plugin,它其实就是几个独立的文件按照一定的目录结构放在一起,然 ...
- mysql编程--创建函数出错的解决方案
本文章转载自:http://www.jb51.net/article/71100.htm 在使用MySQL数据库时,有时会遇到MySQL函数不能创建的情况.下面就教您一个解决MySQL函数不能创建问题 ...
- 必须要推荐的浏览器插件---作者:marsggbo
首先需要说清楚,绝对没有打广告.反反复复用了好多浏览器,换来换去,最后还是留下了chrome浏览器和百度浏览器以及Egde浏览器(不想留也没办法).下面就说说实用的插件吧. 百度 ...
- [微信小程序]初试——成绩分析小程序问题总结
文件类型说明 第一次打开微信小程序的开发者工具,就是下面这个样子. 好多已经存在的默认文件 .js .json .wxml .wxss 首先当然要搞懂这些文件都是干什么的 app.js是小程序的脚本代 ...
- Hive分区(静态分区+动态分区)
Hive分区的概念与传统关系型数据库分区不同. 传统数据库的分区方式:就oracle而言,分区独立存在于段里,里面存储真实的数据,在数据进行插入的时候自动分配分区. Hive的分区方式:由于Hive实 ...
- Maven 自定义 archetype
最近在公司经常要写一些 storm-job 工程的骨架(archetype)非常相似,为了能够将大家的工程结构固定下来以及节约建工程的成本,所以给组内自定义了maven-archetype,中途遇到了 ...