Visual Studio开发环境介绍 及控件属性、事件 您所在的位置:网站首页 命令按钮设置 Visual Studio开发环境介绍 及控件属性、事件

Visual Studio开发环境介绍 及控件属性、事件

2023-08-20 15:36| 来源: 网络整理| 查看: 265

目录

1、创建新项目

2、控件的基本属性

3、窗体

4、标签

5、图像框

6、文本框

7、命令按钮

8、综合实验

1、创建新项目

可通过文件->新建->项目 命令来创建一个新的Windows程序

在这里选择创建了一个Windows窗口程序

(1)工具箱窗口

工具箱提供了Windows应用程序的用户界面控件,这些控件按其使用类型划分在不同的选项卡中,用户也可以自定义选项卡。

(2)窗体设计窗口和代码窗口

开发窗体应用程序大部分工作都是在窗体设计和代码窗口进行的。

A、窗体设计窗口

建立应用程序之初,用户在窗体上建立程序界面,一决定程序窗口运行时的外观。如果一个应用程序包含多个窗口,可通过 项目->添加->Windows窗体  命令添加新窗体。

B、代码窗口

窗体界面设计完成后,就必须编写相应的代码,以实现程序功能。代码的编写在代码窗口中完成。可通过点击主窗口右侧 解决方案资源管理器 窗口中的按钮进行窗口和代码的切换(1为代码显示,2为设计窗口显示)

 

(3)解决方案资源管理窗口

该窗口提供当前运行的解决方案信息。VS中建立的应用程序又可以称为解决方案。一个解决方案可以包含一个或多个项目,用户可以管理和监控方案的各个项目,以及构成项目的各个文件。该窗口类似于Windows资源管理器,双击文件名查看其代码。

Form1.cs、Form1.Designers.cs和program.cs三个文件。其中Form.cs文件包含了用户编写的源代码,Form1.Designers.cs文件包含了用户在窗口设计界面时自动生成的源代码,而program.cs文件中包含了一个Main()函数,该函数是整个程序运行的“入口”。

(4)属性窗口

属性窗口提供了当前项目中单个内容的详细信息,如单个控件或解决方案资源管理器中的某个文件。用户经常通过该窗口设置选定的窗体控件对象的属性。

(5)错误列表窗口

错误列表窗口为一个非常重要的窗口,默认为隐藏,但可通过 视图->错误列表 命令将其显示。

该窗口会提供用户编写程序中的错误、警告和其他项目有关信息。双击该窗口中的出错信息,可以跳转到错误代码所在行。

2、控件的基本属性 属性名描述Name控件的名称,可以在代码中通过这个名称引用该控件Text控件上显示的文本内容Location控件在窗体上的位置,包括控件的水平和垂直位置。也可以由left和Top共同表示Size控件的大小,包括控件的宽和高。也可以由Width和Height两个属性共同表示Font控件上显示文本的字体,包括字体名称、字号、字体样式等ForeColor控件的前景色,即控件上显示文本的颜色BackColor控件的背景色Enable控件的有效性。值为True时,控件有效;值为False时,控件无效Visible控件的可见性。值为True时,控件显示;值为False时,控件隐藏TabIndex控件Tab键序号,用户每次按下Tab键时,焦点会根据该序号有序地在各控件中移动

(1)Location属性和Size属性

location属性决定了控件在窗体上的位置,也可以用Left和Top两个属性来表示,他们分别表示控件左上角到窗体左边界、窗体顶部的距离。

Size属性决定了控件的大小,也可以用Weight和Height两个属性来表示,分别表示控件的宽度和高度

也可以通过代码修改

button1.Left = 80; button1.Top = 50; button1.Width = 80; button1.Height = 25;

(2)Font属性

font属性决定了控件上显示文本的字体、大小、样式等,可通过Font属性对话框设置,也可以在程序通过以下语句格式设置:

对象名.Font=New Font(字体名,字号,字体样式); 3、窗体

(1)窗体的重要属性决定了其外观和操作

属性名描述MaximizeBox最大化按钮。值为True时,显示最大化按钮;值为False时,隐藏最大化按钮Minimize最小化按钮。值为True时,显示最小化按钮;值为False时,隐藏最小化按钮Icon窗体图标ControlBox控制菜单。值为True时,右击标题栏会出现控制菜单;值为False时,不会出现该菜单,同时,窗体图标、最大化及最小化按钮将自动隐藏FormborderStyle窗体的边框样式。共有7中样式,该属性设置会影响到窗体的边框、最(或最小)化按钮及控制菜单等BackgroundImage设置窗体的背景图像BackgroundImageLayout设置窗体背景图像的平铺方式。共有五种,只有在导入背景图像时该属性才有意义

(2)基本事件

A、Load事件

载入窗体时触发,触发后执行名为Form1_Load()的事件处理程序,通常用来在启动程序时对控件属性进行初始化。Load事件是窗体默认事件。

B、Click事件

单击窗体时触发,触发后执行名为Form1_Click的事件处理程序。

C、DoubleClick事件

双击窗体时触发,触发后执行名为Form1_DoubleClick()的事件处理程序

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 WindowsFormsApplication4 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { this.Text = "载入窗体"; this.BackgroundImage = Image.FromFile("1.PNG"); this.BackgroundImageLayout = ImageLayout.Zoom; } private void Form1_Click_1(object sender, EventArgs e) { this.Text = "载入窗体"; this.BackgroundImage = Image.FromFile("2.PNG"); this.BackgroundImageLayout = ImageLayout.Zoom; } } }

该程序为打开程序原图为1.png当单击则为图2.png

注意:Image.FromFile中的文件路径为 bin/debug/;在窗口设计中,默认事件Load可通过双击窗口直接进入Form1_Load()来处理程序。但对于Click和DoubleClick编写程序需要在属性窗口,点击事件按钮,双击Click和DoubleClick

4、标签

(1)重要属性

标签有很多属性,除了上面的基本属性外,还有一些重要属性

属性名描述AutoSize决定标签是否跟随其中的文本内容自欧东调整大小。默认值为True,表示自动调整标签大小,若为false用户可自行调整大小TextAlign标签中显示文本的对齐方式。共有0中,默认为左上角对齐。只有AutoSize属性值为False时才有意义BorderStyle标签的边框样式,共有3中边框样式Image指定在标签上显示的图像ImageAlign

标签上显示图像的对齐方式。共有9种,默认为最上角对齐。只有标签上导入图像这个属性才有意义

(2)基本事件

标签经常相应的事件有Click、doubleClick、MouseEnter、MouseLeave等

private void label1_MouseEnter(object sender, EventArgs e) { label1.ForeColor = Color.Red; //前景色变为红色 label1.BorderStyle = BorderStyle.Fixed3D; //边框变为3D } private void label1_MouseLeave(object sender, EventArgs e) { label1.ForeColor = Color.Black; label1.BorderStyle = BorderStyle.None; } }

上面代码为将窗口显示的文字按鼠标进入和离开变化色彩。

5、图像框

图像框(PictureBox)是专门导入图片的控件,可以导入bmp、jpg、gif、wmf等多种格式的图片文件。

除了基本属性外,图像框还有两个重要属性:image、sizemode

属性名描述Image指定图像框中的图片SizeMode控制图片在图像框中的显示方式

(1)Image属性

将图片装入到图像框有两种方式:在属性窗口中直接设置Image属性和利用以下语句进行添加

图像框控件名.Image=Image.FromFile("图片路径");

其中图像路径为绝对路径,若不指定路径,直接添加文件名,需将图片放置在bin/debug/文件夹下

如果要在当前程序中清楚已经载入的图片,可通过以下语句完成

图像框控件对象名.Image=null;

(2)SizeMode属性

展开图像框的SizeMode属性列表,可以看到属性一共有五个值。其中AutoSize为图像框随着装入的图片大小自动调整;StretchImage为将载入的图片随图像框大小自动调整。

private void button1_Click(object sender, EventArgs e) { pictureBox1.Width = pictureBox1.Width * 2; pictureBox1.Height = pictureBox1.Height * 2; button1.Enabled = false; button2.Enabled = true; } private void button2_Click(object sender, EventArgs e) { pictureBox1.Width = pictureBox1.Width /2; pictureBox1.Height = pictureBox1.Height /2; button1.Enabled = true; button2.Enabled = false; } 6、文本框

文本框(TextBox)是一个编辑文本的区域,用户可在里面输入、编辑和显示文本内容,可通过该控件创建一个来类似于Windows记事本程序的简单文本编辑器。

(1)重要属性

属性名描述MaxLength指定文本框中文本的最大字符长度。当值为0时,表示该长度受限于可用内存,即理想情况下的无限长Multiline设置文本框是否多行。默认值为False,表示单行文本框;当值为True时,表示多行文本框WorldWrap指定在多行文本框中,当一行文本的长度超过了文本框本身的宽度时,是否自动换行,默认为True,表示自动换行ScrollBars指定多行文本框是否显示滚动条。默认值为None,表示无滚动条PassWordChar指定密码字符替换单行文本框中输入的内容。例如,指定PassWordChar为.ReadOnly表示文本框中的内容是否只读。默认值为False,表示文本框可以编辑;当值设为True时,不能编辑,这是文本框就好像一个标签,只读不写SelectionStart文本框中被选中内容的开始位置。文本框第一个字符的位置为0SelectionLength文本框中被选中文本的长度SelectionText文本框中被选中文本的正文内容

其中Mulitiline为True时表示多行文本,此时,ScrollBars和WordWrap才有意义;

multiline属性值为False时,PassWordChar才有意义;

ScrollBars属性可指定滚动样式。默认值为None,表示无滚动条;当属性值为Vertical或Horizontal时可指定垂直或水平滚动条;有可以Both,同时出现。

SelectionStart、SelectionLength和SelectionText属性只能在程序运行时,通过用户操作来获取或设置值。

private void button1_Click(object sender, EventArgs e) { textBox2.Text = textBox1.SelectedText; textBox3.Text = Convert.ToString(textBox1.SelectionStart); textBox4.Text = Convert.ToString(textBox1.SelectionLength); }

以上代码中,由于文本框的selectionstart/selectionlength属性值为数值型,而文本框中的text为字符串型,因此,需要通过convert命令对不同数据类型进行显示转换。

.Net规定,文本框中的第一个字符的位置为0,无论中文还是西文,单个字符的宽度都为1.

(2)基本事件

文本框能响应的事件中,TextCharged、KeyPress、Enter、Leave是最重要的事件。

A、TextCharged事件

只要文本框中的内容发生改变,都会引发TextCharged事件。如C#.NET一词,共触发事件6次;

B、KeyPress事件

当用户按下并释放键盘上的一个按键时,就会触发KeyPress事件。此事件会把用户所按下键的值送入e.KeyChar参数中。

该事件最常用的是回车键,当e.KeyChar的值为13时表示按下了回车。

private void textBox3_TextChanged(object sender, EventArgs e) { textBox1.Text += textBox3.Text + Environment.NewLine; //显示当前输入并换行 } private void textBox4_KeyPress(object sender, KeyPressEventArgs e) { if(e.KeyChar==13) //按回车键,显示当前输入并换行 { textBox2.Text += textBox4.Text + Environment.NewLine; } } }

Environment.NewLine表示换行。

(3)Enter事件和Leave事件

这两个事件被称为焦点事件。当光标进入文本框时,触发enter事件,当光标离开文本框时触发leave事件。

焦点获得和失去一般有两种情况:一种是按Tab键使光标在窗体上的各控件移动,二是直接用鼠标单击窗体上的某个对象。

using System.Text.RegularExpressions; namespace WindowsFormsApplication7 { public partial class Form1 : Form { Regex guoqing = new Regex("^[0-9]*$"); public Form1() { InitializeComponent(); } private void textBox1_Leave(object sender, EventArgs e) //光标离开文本框1进行判断 { if(!guoqing.IsMatch(textBox1.Text)) { MessageBox.Show("只能是数字,请重试"); textBox1.Text = ""; textBox1.Focus(); } } private void textBox2_Leave(object sender, EventArgs e) //光标离开文本框2进行判断 { if (!guoqing.IsMatch(textBox2.Text)) { MessageBox.Show("只能是数字,请重试"); textBox2.Text = ""; textBox2.Focus(); } } private void textBox3_Enter(object sender, EventArgs e) //光标进入文本框3进行判断 { if(textBox1.Text!="" && textBox2.Text!="") //若两个操作数都已输入 { textBox3.Text = (int.Parse(textBox1.Text) + int.Parse(textBox2.Text)).ToString(); } } } }

(4)常用方法

文本框最常用的方法是Focus,该方法的作用是将光标定位到文本框中。其语句为

文本框对象名.Focus(); 7、命令按钮

(1)重要属性

属性名描述TextAlign按钮上显示1文本的对齐方式。共有9种方式,默认为居中对齐Image指定在按钮上显示的图像ImageAlign指定在按钮上显示图像的对齐方式。共有九中FlatStyle设置按钮的样式。共有四种样式,默认值为standard

(2)基本事件

命令按钮最常用的事件是Click,它在用户单击按钮对象时触发。

namespace WindowsFormsApplication8 { public partial class Form1 : Form { string s; //定义剪切板为字符串变量 public Form1() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { s = textBox1.SelectedText; //选中文本送入字符串 textBox1.SelectedText = ""; //清除选中文本 } private void button2_Click(object sender, EventArgs e) { s = textBox1.SelectedText; //选中文本送入剪贴板,实现复制 } private void button3_Click(object sender, EventArgs e) { textBox1.SelectedText = s; //剪切板中的内容送入光标所在的位置,实现黏贴 } private void button4_Click(object sender, EventArgs e) { textBox1.Font = new Font("隶书", 16); //修改字体大小 textBox1.ForeColor = Color.Blue; } private void button5_Click(object sender, EventArgs e) { Application.Exit(); } } }

8、综合实验 控件对象名称属性设置值Form1Text帅气的俊佑 BackGroundImage导入背景图 BackGroundImageLayoutStretchpictureBox1Image导入俊佑图像 SizeModeStretchImage BackColorTransparentbutton1Text开始timerEnableFalse Interval100 每隔0.1秒触发 namespace WindowsFormsApplication9 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { initail(); } private void initail() { pictureBox1.Width = 121; pictureBox1.Height = 138; pictureBox1.Left = 0; pictureBox1.Top = this.ClientSize.Height - pictureBox1.Height; } private void timer1_Tick(object sender, EventArgs e) { pictureBox1.Top = pictureBox1.Top - 5; pictureBox1.Left = pictureBox1.Left + 8; pictureBox1.Height = pictureBox1.Height - 1; pictureBox1.Width = pictureBox1.Width - 1; if(pictureBox1.Top


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有