WinForm - C/S B/S

客户端应用程序 - 是需要安装在用户电脑上才可以使用的程序
特点:
不需要联网也可以打开使用部分功能
但是现在的情况是许多功能依然需要互联网的支持

代码部分在用户电脑上执行

1、记事本 特点:可拖拽,可最大最小,可变换大小
2、计算器 特点:可拖拽,不可更改大小,可最大最小
3、杀毒软件、QQ这种漂亮的窗体 特点:无边框,可拖拽,不可设置大小,QQ:最顶层。
4、不规则窗体 特点:形状不规则,背景透明,去除边框,不可拖拽。

恶搞窗体:
1、启动最大化
2、隐藏标题栏,挡住任务栏
3、置顶
4、不在任务栏显示
5、隐藏任务管理器中的图标
6、屏蔽Alt+F4
7、透明度1% / 蓝屏背景图

布局:

AutoScroll:当窗体中内容超出可见区域时,自动显示滚动条

Location:窗体距离桌面左上角的距离坐标,需要配合StartPosition中的Manual使用

MaximumSize:窗体可以调整到的最大大小

MinimumSize:窗体可以调整到的最小大小

Size:窗体的大小

StartPosition:确定窗体第一次出现时(打开时)的位置 Manual:配合Location设置距离桌面左上角的距离 CenterScreen:根据桌面居中

WindowState:窗体打开时的状态(普通 最小化 最大化)

窗口样式:

Icon:窗体的图标(在窗体左上角以及下方任务栏中显示的图标)

MaximizeBox:确定窗体标题栏右上角是否有最大化框(设置是否可用)

MinimizeBox:确定窗体标题栏的右上角是否有最小化框(单独设置则为灰色不可用 如果最小化最大化都设置为false 则二者都不显示)

Opacity:窗体透明度

ShowInTaskbar:确定窗体是否出现在Windows任务栏中(桌面下方任务栏)

TopMost:设置是否在顶层(分顶层和底层 顶层窗体可以遮挡住所有底部窗体 同层窗体可互相遮挡)

设计:

Name:窗体的名字(在程序中使用的 并非窗口显示的标题)

外观:

BackColor:背景颜色

Backgroundimage:背景图片(最好导入到项目中使用)

BackgroundimageLayout:设置背景图片布局

Cursor:设置鼠标悬浮时的样式

Font:字体设置

ForeColor:前景颜色(文本)

FromBorderStyle:窗体边框和标题栏的外观样式(FixedSingle 不可调整大小 Sizeble 默认 None 无边框和标题栏)

Text:窗体的标题栏文字

不规则窗体:

例:把加速球放到记事本框中并截图,此时图片背景是白色,利用窗口样式中的TransparencyKey属性(绘制到窗体上时显示为透明的颜色)设置为白色,所有白色背景都会变为透明,然后去掉边框,即可制作出不规则窗体

六个最常用的控件:

1、Label 专门用来在窗体上写文本使用 文本写在Text属性里 AutoSize(根据文本内容自动调整大小)

2、ComboBox 下拉框 可在此控件右上方小箭头点击选择编辑项 在里面添加内容

3、RadioButton 单选框 只能选择其中一个 果想将某个单选框内容设置为默认选择 将其Checked属性设置为True即可

4、CheckBox 复选框 可以多选

5、TextBox 文本框 默认一行 点击右上角三角 勾选上MultiLine 即可自己控制文本框大小

6、Button 按钮  name设置按钮名 Text设置按钮显示的文字 双击进入设置按钮的事件(默认为点击事件)

肯德基点餐小练习

program.cs里

using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace xuancanxitong
{
static class Program
{
/// <summary>
/// 应用程序的主入口点。
/// </summary>
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Form1());
}
}
}

Form.cs

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace xuancanxitong
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}

private void Form1_Load(object sender, EventArgs e)
{
comboBox1.SelectedIndex = 0;
}

private void Form1_Click(object sender, EventArgs e)
{
}
private void button1_Click(object sender, EventArgs e)
{
//主食
string zhu = comboBox1.SelectedItem.ToString();
//配餐
string pei = "";

if (radioButton1.Checked)//如果选中的薯条
pei = radioButton1.Text;
else//选中的是玉米沙拉
pei = radioButton2.Text;
//饮品
string he = "";

if (checkBox2.Checked)

he += checkBox2.Text;

if (checkBox1.Checked)
if (he != "")

he+= "," + checkBox1.Text;
else
he += checkBox1.Text;
if (checkBox3.Checked)

if (he != "")

he+= "," + checkBox3.Text;
else
he += checkBox3.Text;
string dz = textBox1.Text;

string dh = textBox2.Text;

MessageBox.Show("您选择的主食是:" + zhu + " \r您选择的配餐是:" + pei + " \r您选择的饮品是:" +he + " \r配送地址:" + dz + " \r联系电话:" + dh);

}

private void checkBox1_CheckedChanged(object sender, EventArgs e)
{

}

private void checkBox3_CheckedChanged(object sender, EventArgs e)
{

}
}
}

Form.cs(设计)

winform基础,主要控件简单介绍,以及小练习的更多相关文章

  1. iOS开发基础-UITableView控件简单介绍

     UITableView 继承自 UIScrollView ,用于实现表格数据展示,支持垂直滚动.  UITableView 需要一个数据源来显示数据,并向数据源查询一共有多少行数据以及每一行显示什么 ...

  2. iOS开发UI篇—UITableview控件简单介绍

    iOS开发UI篇—UITableview控件简单介绍 一.基本介绍 在众多移动应⽤用中,能看到各式各样的表格数据 . 在iOS中,要实现表格数据展示,最常用的做法就是使用UITableView,UIT ...

  3. iOS开发UI篇—Date Picker和UITool Bar控件简单介绍

    iOS开发UI篇—Date Picker和UITool Bar控件简单介绍 一.Date Picker控件 1.简单介绍: Date Picker显示时间的控件 有默认宽高,不用设置数据源和代理 如何 ...

  4. ASP.NET AJAX入门系列(6):UpdateProgress控件简单介绍

    在ASP.NET AJAX Beta2中,UpdateProgress控件已经从“增值”CTP中移到了ASP.NET AJAX核心中.以下两篇关于UpdateProgress的文章基本翻译自ASP.N ...

  5. UISrcoll控件简单介绍

    UISrcoll控件,简单的说就是让界面滑动 当使用uiimageview的时候,给控件设置图片素材时,图片的大小会根据控件的大小,自动做缩放 当使用uibutton的时候,如果是设置背景图,name ...

  6. WPF自学入门(六)WPF带标题的内容控件简单介绍

    在WPF自学入门(二)WPF-XAML布局控件的文章中分别介绍StackPanel,WarpPanel,DockPanel,Grid,Canvas五种布局容器的使用,可以让我们大致了解容器可以使用在什 ...

  7. WPF之核心面板(容器)控件简单介绍

    一.Canvas 1.官方表述:定义一个区域,在该区域中可以使用相对于该区域的坐标显式定位子元素. 2.对于canvas 的元素的位置,是靠控件的大小及Canvas.Top.Canvas.Left.C ...

  8. UITableview控件简单介绍

    注意点:数据源方法只能在控制器里设置 一.基本介绍 在众多移动应⽤用中,能看到各式各样的表格数据 . 在iOS中,要实现表格数据展示,最常用的做法就是使用UITableView,UITableView ...

  9. Webform之FileUpload(上传按钮控件)简单介绍及下载、上传文件时图片预览

    1.FileUpload上传控件:(原文:http://www.cnblogs.com/hide0511/archive/2006/09/24/513201.html) FileUpload 控件显示 ...

随机推荐

  1. stdout( 标准输出流)和 stderr( 标准输入流) 重定向问题

    我想把提示信息和错误信息列表都写入到同一个文件里, /* ** 设置流, 使输出与错误流都指向指定的文件 */ if( (output1 = freopen( PATH, "a", ...

  2. include文件时尽量使用绝对路径

    1.如果能将类的方法定义成static,就尽量定义成static,它的速度会提升将近4倍. 2.$row['id'] 的速度是$row[id]的7倍. 3.echo 比 print 快,并且使用ech ...

  3. JavaScript原型链问题

    1. 使用new来创建对象(调用构造函数)时,如果return的是非对象(数字.字符串.布尔类型等)会忽而略返回值;如果return的是对象,则返回该对象. 2. 重写原型会切断原型链: foo = ...

  4. easyUI datagrid笔记

    easyUI datagrid 简单使用与注意细节 背景: 业余爱好,使用了一下easyUI的搜索框与数据表格,并把两者整合起来进行使用. 使用前提(引入需要的js and css): <lin ...

  5. Decimal To Fraction 小数转换成分数

    以0.25为例, 0.25 * 100 = 25, 求25 和 100 的最大公约数gcd. 25/gcd 为分子. 100/gcd为分母. //小数转分数 //0.3 -> 3/10, 0.2 ...

  6. Dashboard索引缺失、查询不到endpoint或counter

    触发graph的索引全量更新.补救手工操作带来的异常.触发方式为,运行curl -s "http://$hostname:$port/index/updateAll",其中$hos ...

  7. html中表table行循环滚动例子

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><HTML><meta h ...

  8. TCP_NODELAY

    启用TCP_NODELAY的情况下: 客户端程序C连接到服务器程序S: C仅接受数据,S仅发送数据 S循环调用send发送长度很小的数据包比如:10字节; 在C上用任务管理器查看到C的上行流量大约是下 ...

  9. NULLIF()函数使用讲解

    NULLIF()函数接受两个参数.如果它们相等,那么返回空值:否则,返回第一个参数. 等价于下面的表达式: case when expression1=expression2 then null el ...

  10. 《30天自制操作系统》16_day_学习笔记

    harib13a: 今天我们要继续折腾多任务,任务的高效管理是操作系统的一个重要的任务.在今天,我们将为系统创建更加完善的任务管理系统,其中包括优先级,任务等级等. 1.任务管理结构体 #define ...