实验8(和图形).doc_第1页
实验8(和图形).doc_第2页
实验8(和图形).doc_第3页
实验8(和图形).doc_第4页
实验8(和图形).doc_第5页
已阅读5页,还剩1页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

实验8 文件和图形(设计性)实验目的:1. 掌握文件的概念2. 掌握文件的打开、读写和关闭方法3. 了解顺序文件和随机文件的使用4. 了解VB图形坐标系的概念5. 了解与绘图有关的常用属性、事件和方法实验内容:实验1:建立一个学生成绩文件,将输入的学生成绩添加到stud.txt文件中。界面设置如下图所示。Private Sub Form_Load() CommonDialog1.ShowSave Open CommonDialog1.FileName For Output As #2End SubPrivate Sub Command1_Click() 添加 no = Text1.Text : na = Text2.Text g1 = Val(Text3.Text) : g2 = Val(Text4.Text) Write #2, no, na, g1, g2 Text1.Text = : Text2.Text = Text3.Text = : Text4.Text = End SubPrivate Sub Command2_Click() 退出 Close #2 EndEnd Sub实验2:读入上例生成的文件,并计算每个学生的平均成绩,界面如下,其中,通用对话框控件用于打开一个“打开文件”对话框,在对话框中所选择的文件将作为要显示的文件。Private Sub Command1_Click() CommonDialog1.ShowOpen Open CommonDialog1.FileName For Input As #3 Text1.Text = Do While Not EOF(3) 装入用Write #语句生成的文件 Input #3, num, nam, s1, s2 ave = (s1 + s2) / 2 Text1.Text = Text1.Text & num & & nam _ & & Str(s1) & & Str(s2) & _ & Str(ave) & Chr(13) & Chr(10) Loop Close #3End Sub实验3:建立学生成绩随机文件。界面如下图。Private Type StudRec No As String * 6 Name As String * 8 Math As Integer English As IntegerEnd TypeDim StudTab As StudRecPrivate Sub Form_Load() CommonDialog1.ShowSave Open CommonDialog1.FileName For Random As #1 Len = Len(StudTab)End SubPrivate Sub Command1_Click() StudTab.No = Text1.Text StudTab.Name = Text2.Text StudTab.Math = Val(Text3.Text) StudTab.English = Val(Text4.Text) Put #1, , StudTab Text1.Text = Text2.Text = Text3.Text = Text4.Text = End SubPrivate Sub Command2_Click() Close #1 EndEnd Sub实验4:分别使用Scale方法的属性和Scale方法自定义坐标系统。要求新坐标的左上角的坐标(100,200),X轴为6个单位,Y轴为4个单位。以窗体的中心为圆心,绘制一个红色的圆。程序代码及窗体界面设计如下:Private Sub Form_click() Form1.ScaleLeft = 100 Form1.ScaleTop = 200 Form1.ScaleWidth = 6 Form1.ScaleHeight = 4 Form1.Circle (103, 202), 1, vbRedEnd SubPrivate Sub Form_Click() Form1.ScaleMode = 0 Form1.Scale (100, 200)-(106, 204) Form1.Circle step(3,2), 1, vbRedEnd Sub实验5:用PSet方法在窗体上绘制一条0,360的正弦曲线。Private Sub Form_Click() DrawWidth = 2 Scale (0, 1)-(360, -1) For x = 0 To 360 step 0.01 y = Sin(x * 3.1415926 / 180) PSet (x, y), vbRed Next xEnd Sub实验6:用Line方法绘制一个柱状图表,每个柱的填充颜色和样式都不同,并且在柱的正上方标有柱的长度。Private Sub Form_Resize() Const x0 = 5: Const y0 = 5 Cls Scale (0, 100)-(100, 0) 自定义坐标系统 Line (x0, y0)-(x0, 90) 绘制Y轴 Line (x0, y0)-(90, y0) 绘制X轴 For i = 10 To 70 Step 10 FillStyle = i / 10 设置填充样式 FillColor = QBColor(i / 10) - 1) 设置填充颜色 Line (x0 + i, y0 + i)-(x0 + i + 6, y0), , B 绘制矩形 CurrentX = x0 + i - 1 CurrentY = y0 + i + 8 Print i NextEnd Sub实验7:编写程序,实现在屏幕颜色为16位色以上的显示方式下,画一个背景上深下浅的窗体。运行界面如下:参考代码:Private Sub Form_Load() Label1.FontSize = 20 Label1.ForeColor = RGB(255, 255, 255) Label1.BackStyle = 0End SubPrivate Sub Form_Paint() Dim i As Integer ScaleMode = 3 For i = 0 To 255 Line (0, i)-(Me.Width, i), RGB(i, i, 255) Next iEnd Sub实验8:利用Circle方法在窗体中画一个圆桶。运行界面如下:提示:利用循环从下到上画一系列的椭圆,最上面的画成实心的即可。参考代码:Private Sub Form_Paint() For i = 1000 To 1 Step -1 Circle (1900, 700 + i), 1000, vbRed, , , 3 / 5 Next Me.FillStyle = 0 Me.FillColor = RGB(255, 255, 255) Circle (1900, 700), 1000, , , , 3 / 5End Sub实验9:利用Circle方法在窗体中画一个有缺口的饼。提示:利用循环从下到上画一系列有缺口的椭圆,最上面的画成实心的即可。参考代码:Private Sub Form_Paint() Const pi = 3.14159 For i = 300 To 1 Step -1 Circle (1900, 1000 + i), 1000, vbRed, -pi / 3, -pi / 6, 3 / 5 Next Me.FillStyle = 0 Me.FillStyle = RGB(255, 255, 255) Circle (1900, 1000), 1000, , -pi / 3, -pi / 6, 3 / 5 End Sub运行界面如下:实验10:在窗体上画五角星。提示:以五角星的左下角为起点,依次向上、右下、左上、右上画线,最后回到左下角。注意,每个角的角度值转换为弧度值后为2/10。利用三角函数可以得到顶点的相对坐标。将画五角星的过程定义为子过程,可以反复调用。参考代码:Const pi = 3.14159Sub star(X As Single) Randomize n = Int(Rnd * 16) colr = QBColor(n) Line -Step(X * Sin(pi / 10), -X * Cos(pi / 10), colr Line -Step(X * Sin(pi / 10), X * Cos(pi / 10), colr Line -Step(-X * Cos(2 * pi / 10), -X * Sin(2 * pi / 10), colr Line -Step(X, 0), colr Line -Step(-X * C

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论