C#实验报告实验一登陆界面一实验目的1了解界面设计的内容和基本要求2掌握标签(label)控件,按钮(button)控件,RadioButton控件,多选框(CheckBox)控件,文本框(TextBox)控件,ComboBox控件,PictureBox控件,MessageBox控件,ImageList控件等常用控件的基本属性设置和使用代码操控进行实现的过程。二实验环境MircrosoftVisualStudio2010三实验内容主要代码:privatevoidbutton1_Click(objectsender,EventArgse){Stringstr1=textBox1.Text;Stringstr2=textBox2.Text;Stringstr3=textBox3.Text;if(str2.Equals(123456)){MessageBox.Show(账号+str1+\n+str4+\n+str5+\n+str6+\n+年龄+str3+\n);}else{MessageBox.Show(密码错误,错误提示);}}四实验结果五分析与讨论1在对控件进行属性设置时,不够了解一些属性的基本用途,比如开始在设置密码输入显示为*时就不知道该用什么设置,在经过这次实验后知道了一些具体属性的设置。2在进行用户登录时需要获取用户的一些基本信息。像获取输入账号,密码,年龄等一些基本信息都比较简单,虽然密码匹配在这次实验中并不难,但是若涉及到数据库,则较为复杂。涉及到一些基本表的交互问题。所以要想熟练掌握c#的相关知识,还是该对数据库有些基本的了解。3在点击确定弹出窗口的时候曾考虑是否要在创建一个新的窗口,但可调用MessageBox类的静态Show方法来显示消息对话框,简便快捷。4对ImageList控件并不够了解,不知道代码的具体实现。实验二TabControl控件的应用一实验目的1了解界面设计的内容和基本要求2掌握tabControl控件,label控件,ComboBox控件,PictureBox控件,treeView控件的基本属性设置和用代码操控进行实现的过程。二实验环境MircrosoftVisualStudio2010三实验内容主要代码:privatevoidcomboBox1_SelectedIndexChanged(objectsender,EventArgse){Stringstr=comboBox1.Text;if(pictureBox1.Image!=null){pictureBox1.Image.Dispose();}pictureBox1.Image=Image.FromFile(str);}privatevoidtreeView1_AfterSelect(objectsender,TreeViewEventArgse){if(e.Node.Text==计算机){Processp=newProcess();p.StartInfo.FileName=calc.exe;p.Start();}if(e.Node.Text==记事本){Processp=newProcess();p.StartInfo.FileName=notepad.exe;p.Start();}if(e.Node.Text==写字板){Processp=newProcess();p.StartInfo.FileName=wordpad.exe;p.Start();}}四实验结果五分析与结论1与实验一基本步骤差不多,除了一些控件的基本属性设置,并无太大问题。2主要还是对imageList控件不太熟悉,不能熟练把组合框和imageList的控件组合起来,所以还是要多加练习。实验三计时器的使用一实验目的1了解界面设计的内容和基本要求2掌握menuStrip控件,toolStrip控件,timer控件,ToolStripMenuItem控件,toolStripButton控件的基本属性设置和用代码操控进行实现的过程。二实验环境MircrosoftVisualStudio2010三实验内容privatevoid系统时间ToolStripMenuItem_Click(objectsender,EventArgse){label1.Text=DateTime.Now.ToString(yyyy-MM-ddHH:mm:ss);timer1.Start();}privatevoid秒ToolStripMenuItem_Click(objectsender,EventArgse){count=60;timer2.Start();}privatevoid秒ToolStripMenuItem1_Click(objectsender,EventArgse){count=30;timer2.Start();}privatevoid秒ToolStripMenuItem2_Click(objectsender,EventArgse){count=10;timer2.Start();}privatevoidtimer1_Tick(objectsender,EventArgse){label1.Text=DateTime.Now.ToString(yyyy-MM-ddHH:mm:ss);timer1.Start();}privatevoidtoolStripButton1_Click(objectsender,EventArgse){Formfr2=newForm2();fr2.Show();}privatevoidtimer2_Tick(objectsender,EventArgse){count--;label2.Text=count.ToString();if(count==1){MessageBox.Show(时间已到);timer2.Stop();}privatevoid最大化ToolStripMenuItem_Click(objectsender,EventArgse){this.WindowState=FormWindowState.Maximized;}privatevoid最小化ToolStripMenuItem_Click(objectsender,EventArgse){this.WindowState=FormWindowState.Minimized;}privatevoid还原ToolStripMenuItem_Click(objectsender,EventArgse){this.WindowState=FormWindowState.Normal;}四实验结果五分析与结论1form2单击右键实现功能无法截图。2热键和快捷键之间的设置有所差别,热键是&+所需的按键,如&T,而快捷键则是ctrl+所需的按键,如ctrl+S。3在通过系统时间和倒计时具体代码实现时需要利用两个计时器,一个计时器容易导致时间混乱,无法准确的实现其具体功能。4在设置倒计时时定义了count变量,开始时由于倒计时有三种,60秒,30秒,10秒,因此无法准确定义该变量是为全局变量还是局部变量,无法实现倒计时功能。现在知道将该变量定义为全局变量,再在各具体功能的代码实现中具体定义该变量的值,实现具体功能。实验四GDI+图形绘制一实验目的1了解界面设计的内容和基本要求2掌握使用Graphics对象的方法绘图、显示文本或处理图像的一些基本方法,学会创建pen对象及其一些画图的方法。二实验环境MircrosoftVisualStudio2010三实验内容四实验结果五分析与结论1主要还是掌握图形的绘制方法,需要事先计算各点的坐标,掌握点与线之间的关系。2学会调节同一方法中代码对后面代码的实现,比如颜色的控制。实验五一实验目的1掌握文件流的操作,能够熟练创建文件流对象,并对其文本文件读取和写入操作的类能熟练操作,对其方法熟练应用。2熟练掌握文件的读取与写入的功能。二实验环境MircrosoftVisualStudio2010三实验内容主要代码:staticvoidMain(string[]args){FileStreamaFile=newFileStream(@C:\Users\Administrator\Desktop\欢迎.txt,FileMode.OpenOrCreate);StreamWritersw=newStreamWriter(aFile);sw.WriteLine(101010);sw.Close();}四实验结果五分析与结论1了解并区分文件(File)及文件流(FileStream)的基本概念和用处,这个实验主要是通过创建文件流对象,使用指定的路径、创建模式和读/写权限初始化FileStream类的实例。2文件的操作中主要是读取和写入,C#提供了两个专门负责文本文件读取和写入操作的类,即StreamWriter(流写入类)及StreamReader(流读取类)。但该实验中用到的是StreamWriter,没有进行读取操作。如果想输入多行数据并且不换行的应该用Write而不是WriteLine.3在运行时经常容易出现闪退的情况,而这个是在SQLServers2008中出现的问题,在调试代码的时候应该使用开始运行(不调试)。这是对SQLServers2008不够熟练,因此在熟悉一些基本软件应用的时候还是应该多了解软件本身。实验六一实验目的1了解界面设计的内容和基本要求二实验环境MircrosoftVisualStudio2010三实验内容staticvoidMain(string[]args){FileStreamfs=newFileStream(e:\\abc.txt,FileMode.Append);StreamWritersw=newStreamWriter(fs);for(inti=0;i26;i++){charch=(char)(65+i);sw.Write(ch);}sw.Close();fs.Close();FileStreamfs1=newFileStream(e:\\abc.txt,FileMode.OpenOrCreate);StreamReadersr=newStreamReader(fs1);Stringst=sr.ReadLine();while(st!=null){Console.WriteLine(st);st=sr.ReadLine();}sr.Close();}四实验结果五分析与结论1在实验过程中,若要使用已追加的方式打开,则需要将FileStream中的FileMode.OpenOrCreate改成true,FileMode.Append。2在将a到z之间的26个字母依次写入后在读出时始终是其ASCII码的形式。因此可以在输入过程中将其ASCII码强制转换为字符型。3在对文件操作的过程中,一些文件的对象创建和具体操作还是不够熟练,在操作过程中还是需要参照课件学习,因此在学习中还是应该多进行实体操作,多锻炼动手能力。