C#编程环境实验报告7.docx
- 文档编号:9242697
- 上传时间:2023-05-17
- 格式:DOCX
- 页数:15
- 大小:291.77KB
C#编程环境实验报告7.docx
《C#编程环境实验报告7.docx》由会员分享,可在线阅读,更多相关《C#编程环境实验报告7.docx(15页珍藏版)》请在冰点文库上搜索。
C#编程环境实验报告7
江西理工大学软件学院
计算机类课程实验报告
课程名称:
C#程序设计
班级:
11软会4班
姓名:
黄健
学号:
11222122
江西理工大学软件学院
实验七
实验名称
GDI+编程
实验日期
2013-5-30
实验成绩
实验目的、要求及内容
一、实验目的:
1、创建Graphics对象;
2、使用Graphics对象绘制线条和形状、呈现文本或显示与操作图像
2、实验内容
1、创建Graphics类的实例的对象,使用Graphics对象绘制线条和形状。
1)新建Windows应用程序。
2)添加一个按钮,双击按钮,添加绘图程序。
3)运行程序,观察运行结果。
让圆在屏幕上随机移动,当圆接触到边缘后就改变方向。
修改和运行程序,观察运行结果。
添加两个按钮,实现清除和文本测试。
2、操作图像,实现图片的打开、保存等功能
以编程方式在操作菜单项下增加“放大”和“缩小”子菜单项,以当前图像大小的10%的比例实现图片的缩放功能。
实验环境
地点:
3423机房
C#环境:
1、VS2010
2、.NetFramework3.5
算法描述及实验步骤
创建Graphics对象,使用Graphics对象绘制线条和形状:
1.启动vs2008.
2..创建窗体与菜单。
新建一个windows应用程序。
3.添加一个按钮,双击按钮,添加代码。
4.按F5键进行调试。
5.观察运行成果。
6.添加两个按钮,实现清除和文本测试
操作图像,实现图片的打开、保存等功能
(1)设计新窗体。
(2)编写代码。
(3)编译运行,观察运行结果。
调试过程及实验结果
1.实验运行结果
2.添加两个按钮,实现清除和文本测试
3.结果
总结
通过这次实践,我觉得我学到了很多东西,不光光是在知识层面上的,整体都有了进一步的了解,更是认识到编程的不容易,一个看似简单的程序,原来也有这么多的代码,但是那么一个复杂的代码,如果深入研究后你会发现其实各个代码之间都是有联系的,一个看上去巨大的程序实际上是由若干个函数、方法、类等组成的。
以前对于那些小的程序尚能敲一敲,看得懂。
对于大的程序就很容易感到束手无策。
我觉得在问题面前我们应该先要冷静地分析一下,将大问题分解成一个个的小问题,再各个击破。
虽然成功地完成了程序,但是自己本身尚有许多不足之处,需要进一步的学习和巩固。
不管是做什么都要有坚韧不拔的意志,在遇到困难的时候要懂得坚持,也要学会分析问题、解决问题。
同时,很多的东西,理解了,可是在实现的时候还是有很多的错误发生,在以后的练习和实践中,应该多动手,遇到问题多思考,即使方案不是最优的也要想办法自己解决,然后和好的方案进行比较,从中找出自己的差距在哪里。
最后感谢老师在实验中对我们的指导
代码
实验7-1:
创建Graphics对象,使用Graphics对象绘制线条和形状
主要相关代码:
1.添加一个按钮,双击按钮,添加绘图程序
privatevoidbutton1_Click(objectsender,EventArgse)
{
GraphicsmyGra=this.CreateGraphics();
Penmypen1=newPen(Color.Red,2);
myGra.DrawLine(mypen1,100,0,300,500);//直线
Penmypen2=newPen(Color.Orange,2);
myGra.DrawEllipse(mypen2,100,100,60,60);//圆形
myGra.DrawEllipse(mypen2,200,100,60,120);//椭圆形
Penmypen3=newPen(Color.Yellow,3);
myGra.DrawRectangle(mypen3,123,234,60,60);//正方形
myGra.DrawRectangle(mypen3,223,234,60,120);//任意矩形
//自定义多边形
Point[]myPoint=newPoint[4];
myPoint[0].Y=100;
myPoint[1].X=200;
myPoint[1].Y=20;
myPoint[2].X=300;
myPoint[2].Y=100;
myPoint[3].X=123;
myPoint[3].Y=234;
Penmypen20=newPen(Color.Aqua);
myGra.DrawPolygon(mypen20,myPoint);
}
2.添加两个按钮,实现清除和文本测试
privatevoidbutton3_Click(objectsender,EventArgse)
{
GraphicsfontGra=this.CreateGraphics();
FontmyFont=newFont("楷体",24);
BrushmyBr=newSolidBrush(Color.Red);
fontGra.DrawString(button_Font.Text,myFont,myBr,newPoint(200,200));
}
privatevoidbutton2_Click(objectsender,EventArgse)
{
GraphicsclearG=this.CreateGraphics();
clearG.Clear(Color.White);
}
实验7-2:
操作图像,实现图片的打开、保存等功能
相关主要代码:
1.Form1.Designer.cs
namespacemyImage
{
partialclassForm1
{
///
///必需的设计器变量。
///
privateSystem.ComponentModel.IContainercomponents=null;
///
///清理所有正在使用的资源。
///
///
protectedoverridevoidDispose(booldisposing)
{
if(disposing&&(components!
=null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#regionWindows窗体设计器生成的代码
///
///设计器支持所需的方法-不要
///使用代码编辑器修改此方法的内容。
///
privatevoidInitializeComponent()
{
this.menuStrip1=newSystem.Windows.Forms.MenuStrip();
this.FileToolStripMenuItem=newSystem.Windows.Forms.ToolStripMenuItem();
this.menuItemOpen=newSystem.Windows.Forms.ToolStripMenuItem();
this.menuItemSave=newSystem.Windows.Forms.ToolStripMenuItem();
this.menuItemExit=newSystem.Windows.Forms.ToolStripMenuItem();
this.OpToolStripMenuItem=newSystem.Windows.Forms.ToolStripMenuItem();
this.menuItemInvert=newSystem.Windows.Forms.ToolStripMenuItem();
this.menuItemGray=newSystem.Windows.Forms.ToolStripMenuItem();
this.menuItemBright=newSystem.Windows.Forms.ToolStripMenuItem();
this.menuStrip1.SuspendLayout();
this.SuspendLayout();
//menuStrip1
//
//menuStrip1
//
this.menuStrip1.Items.AddRange(newSystem.Windows.Forms.ToolStripItem[]{
this.FileToolStripMenuItem,
this.OpToolStripMenuItem});
this.menuStrip1.Location=newSystem.Drawing.Point(0,0);
this.menuStrip1.Name="menuStrip1";
this.menuStrip1.Size=newSystem.Drawing.Size(292,24);
this.menuStrip1.TabIndex=0;
this.menuStrip1.Text="menuStrip1";
//
//FileToolStripMenuItem
//
this.FileToolStripMenuItem.DropDownItems.AddRange(newSystem.Windows.Forms.ToolStripItem[]{
this.menuItemOpen,
this.menuItemSave,
this.menuItemExit});
this.FileToolStripMenuItem.Name="FileToolStripMenuItem";
this.FileToolStripMenuItem.Size=newSystem.Drawing.Size(43,20);
this.FileToolStripMenuItem.Text="文件";
//
//menuItemOpen
//
this.menuItemOpen.Name="menuItemOpen";
this.menuItemOpen.Size=newSystem.Drawing.Size(152,22);
this.menuItemOpen.Text="打开";
//
//menuItemSave
//
this.menuItemSave.Name="menuItemSave";
this.menuItemSave.Size=newSystem.Drawing.Size(152,22);
this.menuItemSave.Text="保存";
//
//menuItemExit
//
this.menuItemExit.Name="menuItemExit";
this.menuItemExit.Size=newSystem.Drawing.Size(152,22);
this.menuItemExit.Text="退出";
//
//OpToolStripMenuItem
//
if(this.checkBox_zi.Checked==true)
this.textBox1.Text=textBox1.Text+checkBox_zi.Text+",";
}
privatevoidradioButton_hong_CheckedChanged_1(objectsender,EventArgse)
{
if(this.radioButton_hong.Checked==true)
this.BackColor=Color.Red;
}
privatevoidtextBox1_TextChanged(objectsender,EventArgse)
{
}
}
}
this.OpToolStripMenuItem.DropDownItems.AddRange(newSystem.Windows.Forms.ToolStripItem[]{
this.menuItemInvert,
this.menuItemGray,
this.menuItemBright});
this.OpToolStripMenuItem.Name="OpToolStripMenuItem";
this.OpToolStripMenuItem.Size=newSystem.Drawing.Size(43,20);
this.OpToolStripMenuItem.Text="操作";
//
//menuItemInvert
//
this.menuItemInvert.Name="menuItemInvert";
this.menuItemInvert.Size=newSystem.Drawing.Size(152,22);
this.menuItemInvert.Text="插入";
//
//menuItemGray
//
this.menuItemGray.Name="menuItemGray";
this.menuItemGray.Size=newSystem.Drawing.Size(152,22);
this.menuItemGray.Text="灰度";
//
//menuItemBright
//
this.menuItemBright.Name="menuItemBright";
this.menuItemBright.Size=newSystem.Drawing.Size(152,22);
this.menuItemBright.Text="亮度";
//
//Form1
//
this.AutoScaleDimensions=newSystem.Drawing.SizeF(6F,12F);
this.AutoScaleMode=System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize=newSystem.Drawing.Size(292,267);
this.Controls.Add(this.menuStrip1);
this.MainMenuStrip=this.menuStrip1;
this.Name="Form1";
this.Text="Form1";
this.menuStrip1.ResumeLayout(false);
this.menuStrip1.PerformLayout();
this.ResumeLayout(false);
this.PerformLayout();
}
{
#endregion
privateSystem.Windows.Forms.MenuStripmenuStrip1;
privateSystem.Windows.Forms.ToolStripMenuItemFileToolStripMenuItem;
privateSystem.Windows.Forms.ToolStripMenuItemmenuItemOpen;
privateSystem.Windows.Forms.ToolStripMenuItemmenuItemSave;
privateSystem.Windows.Forms.ToolStripMenuItemmenuItemExit;
privateSystem.Windows.Forms.ToolStripMenuItemOpToolStripMenuItem;
privateSystem.Windows.Forms.ToolStripMenuItemmenuItemInvert;
privateSystem.Windows.Forms.ToolStripMenuItemmenuItemGray;
privateSystem.Windows.Forms.ToolStripMenuItemmenuItemBright;
}
}
}2.Form.cs
usingSystem;
usingSystem.Collections.Generic;
usingSystem.ComponentModel;
usingSystem.Data;
usingSystem.Drawing;
usingSystem.Text;
usingSystem.Windows.Forms;
namespacemyImage
{
publicpartialclassForm1:
Form
{
publicBitmapm_Bitmap=null;
publicForm1()
{
InitializeComponent();
//m_Bitmap=newBitmap(@"C:
\A.bmp");
}
privatevoidFileToolStripMenuItem_Click(objectsender,EventArgse)
{
}
privatevoidmenuItemOpen_Click(objectsender,EventArgse)
{
OpenFileDialogopenFileDialog=newOpenFileDialog();
openFileDialog.Filter="Bitmap文件(*.bmp)|*.bmp|Jpeg文件(*.Jpg)|*.jpg|所有合适的文件(*.bmp/*.jpg)|*.bmp/*.jpg";
openFileDialog.FilterIndex=2;
openFileDialog.RestoreDirectory=true;
if(DialogResult.OK==openFileDialog.ShowDialog())
{
m_Bitmap=(Bitmap)Bitmap.FromFile(openFileDialog.FileName,false);
this.AutoScroll=true;
this.AutoScrollMinSize=newSize((int)(m_Bitmap.Width),(int)m_Bitmap.Height);
this.Invalidate();
}
}
saveFileDialog.FilterIndex=1;
saveFileDialog.RestoreDirectory=true;
if(DialogResult.OK==saveFileDialog.ShowDialog())
{
m_Bitmap.Save(saveFileDialog.FileName);
}
}
privatevoidmenuItemExit_Click(objectsender,EventArgse)
{
this.Close();
}
privatevoidForm1_Load(objectsender,EventArgse)
{
}
privatevoidForm1_Paint(objectsender,PaintEventArgse)
{
Graphicsgra=e.Graphics;
gra.DrawImage(m_Bitmap,newRectangle(this.AutoScrollPosition.X,this.AutoScrollPosition.Y,(int)(m_Bitmap.Width),(int)(m_Bitmap.Height)));
}
}
}
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C# 编程 环境 实验 报告
![提示](https://static.bingdoc.com/images/bang_tan.gif)