Windows基础控件
*常用的控件分类:
| 控件分类 | 说明 |
|---|---|
| 文本类控件 | 用于在控件上显示文本,如TextBox,Lable |
| 选择类控件 | 用于提供界面让用户选择 |
| 分组控件 | 用于对窗体中的控件进行分组,如GroupBox,panel等 |
| 菜单 | 用于为系统制作菜单,比如,菜单栏,右键菜单 |
| 工具栏 | 用于提供主菜单中常用的相关工具 |
| 状态栏 | 用于显示程序相关信息,如当前用户,当前时间 |
•控件的基本操作:
添加控件:从工具栏单击某控件,拖拽到窗体合适位置
删除控件:选择控件,右键删除
对齐控件:选择控件,格式菜单,对齐
锁定控件:选择控件,右键锁定控件
1.文本类控件:
AutoSize:设置为True自动尺寸,大小被文本撑开,设置为false,可以手动拖拽设置大小
BackColor:设置背景颜色
Font:字体样式和字体大小
ForeColor:字体颜色
TextAlign:设置文本对齐方式
标签控件(Lable):
主要用于窗体上显示用户不能编辑的文本
通过Text属性可以设置或读取标签的文本
通过Visible属性,可以显示或隐藏标签
文本框控件(TextBox):
Text属性可以设置或获取用户输入的文本
ReadOnly属性,只读
Multiline属性,设置为true,表示可以多行输入,可以调整大小
创建密码文本框:
1.UseSystemPasswordChar属性设置为True
2.PasswordChar属性设置为你想展示的符号
按钮控件(Button):
按钮控件允许用户通过单击来执行操作,单击按钮,触发Click事件
Text用于显示文本
BackColor用于设置背景颜色
Backgroundimage设置按钮图像
BackgroundimageLayout用于设置图像的样式
2.菜单栏:
菜单概述:
通常用于显示程序的各项功能,以方便用户选择执行
菜单通常分为下拉菜单和弹出菜单
下拉式菜单(MenuStrip):
通常出现在应用程序顶部
主要由菜单栏,主菜单,子菜单和快捷键组成
快捷键格式:设置ShortcutKeys属性
弹出式菜单(ContextMenuScript):
弹出式菜单,也称为右键菜单
点击右键弹出
需要将弹出的菜单与什么控件关联,则设置该控件的ContextMenuStrip属性为菜单的名字,
如果直接与窗体关联,则直接设置窗体的ContextMenuStrip属性为菜单名字
3.工具栏(ToolStrip):
为用户提供了应用程序中常用的菜单命令的快速访问方式
通常位于菜单栏的下方,由许多命令按钮组成,每个按钮上都有一个代表功能的小图标
4.状态栏(StatusStrip):
状态栏通常用于显示系统程序的应用信息
比如,用户信息,软件版本号,当前时间和欢迎信息等,通常位于应用程序窗口的底部
例如,在状态栏显示当前系统时间和欢迎信息
一般显示文本内容使用StatusLable
private void Form1_Load(object sender, EventArgs e)
{
this.toolStripStatusLabel1.Text = string.Format("当前系统事件:{0},欢迎使用图书管理系统",DateTime.Now.ToShortDateString());
}
5.分组控件:
分组控件作为一个容器,可以对窗体中的控件进行分组
GroupBox:
作为一个容器,可以拖拽其他控件到其中,起到分组的作用,可以通过Text属性设置左上角的文本
Panel:
作为一个容器,可以拖拽其他控件到其中,起到分组的作用,当内部的控件超出范围的时候可以通过
AutoScroll=True和AutoSize=false两个属性出现滚动条
TabControl:
提供一个选项卡式页面以有效的组织和访问以分组对象
TabPages属性中的Text用于设置选项卡名称
SplitContaine:
提供可移动分条分隔的两个面板
TableLayoutPanel:
表示一个面板,它可以在一个由行跟列组成的网格中对其内容进行动态布局
FlowLayOutPanel:
表示一个沿水平或垂直方向动态排放其内容的面板
FlowDirection设置控件的排列方式
6.选择类控件:
在开发Windows应用程序时,通常需要提供界面让用户进行选择,此时需要使用选择类控件。
文本项和图形项(图标)列表(ListBox):
显示一个文本项和图形项(图标)列表。
下拉组合框控件(ComboBox):
下拉组合框控件用于为用户提供选择列表,用户可以选择列表中的某一项或输入文本值。
向ComboBox中添加选择项,有两种方式:
(1)设计器中通过界面添加选择项,找到Items属性设置选择项。
(2)通过代码添加选择项
//窗体的Load事件
private void Form1_Load(object sender, EventArgs e)
{
//窗体加载时,向ComboBox中添加选择项
this.cb_type.Items.Add("日用百货");
this.cb_type.Items.Add("服装鞋袜");
this.cb_type.Items.Add("数码产品");
this.cb_type.Items.Add("母婴用品");
}
DropDownStyle属性:
用于设置ComboBox的下拉样式,ComboBox支持三种下拉样式:
| 属性值 | 说明 |
|---|---|
| Simple | ComboBox列表部分总是可见 |
| DropDown(默认值) | 用户可以编辑控件的文本框部分,单击箭头才显示列表 |
| DropDownList | 用户不可以编辑控件的文本框部分,只能点击箭头选择一项 |
复选框控件(CheckBox):
用于为用户提供多项选择,Text属性用于指定控件右侧文本,Checked属性可以控制其选中状态,选中状态发生变化时,将触发CheckedChanged事件。
单选框控件(RadioButton):
用于为用户提供唯一选择,Text属性用于指定按钮右侧文本,Checked属性用于控制其选中状态,当选中状态发生更改时,将触发CheckedChanged事件。
7.图片框PictureBox控件:
用于在窗体的指定位置显示图片,其为不可编辑的控件
常用属性:
1.Image:显示图像
2.SizeMode:设置图像位置和控件大小
8.图片集ImageList控件:
因为PictureBox控件只能存储一张图片,如果需要对多张图片进行展示就要用到图像集
图像集用于存储多个图像资源,通过索引访问图像集中的图片
namespace 图像集
{
public partial class Form1 : Form
{
public Form1()
{ InitializeComponent(); }
private void IamgeListForm_Load(object sender, EventArgs e) { }
private int Idenx = 0;
private void button1_Click(object sender, EventArgs e)
{
Idenx--;
SetButtonEnable();
pictureBox1.Image = imageList1.Images[Idenx];
}
private void Form1_Load(object sender, EventArgs e)
{
this.pictureBox1.Image=imageList1.Images[0];
button1.Enabled = false;
}
private void SetButtonEnable()
{
button2.Enabled = true;
button1.Enabled = true;
if (Idenx==0)
{ this.button1.Enabled = false; }
if (Idenx==imageList1.Images.Count-1)
{ this.button2.Enabled = false; }
}
private void button2_Click(object sender, EventArgs e)
{
Idenx++;
SetButtonEnable();
pictureBox1.Image = imageList1.Images[Idenx];
}
}
}
9.计时器Timer控件:
按用户定义的时间间隔引发事件的控件,程序每隔一定时间重复执行一个操作。
常用属性
interval:事件发生的间隔,毫秒为单位
Enable:设置计时器是否启动
常用方法
Start()启动计时器
Stop()停止计时器
事件
Tick 定时间隔到,自动触发事件
namespace 计时器
{
public partial class Form1 : Form
{
public Form1()
{ InitializeComponent(); }
private void timer1_Tick(object sender, EventArgs e)
{
label1.Text = DateTime.Now.ToString("yyyy年MM月dd日 hh:mm:ss");
}
private void Form1_Load(object sender, EventArgs e)
{
label1.Text = DateTime.Now.ToString("yyyy年MM月dd日 hh:mm:ss");
timer1.Start();
}
}
}
2144

被折叠的 条评论
为什么被折叠?



