拖一个PictureBox1控件
成都创新互联公司-专业网站定制、快速模板网站建设、高性价比桦南网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式桦南网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖桦南地区。费用合理售后完善,十多年实体公司更值得信赖。
创建一个Paint事件。在事件中加入
Private Sub PictureBox1_Paint(ByVal sender As Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles PictureBox1.Paint
' Create pens.
Dim redPen As New Pen(Color.Red, 3)
Dim greenPen As New Pen(Color.Green, 3)
' Create points that define curve.
Dim point1 As New Point(50, 50)
Dim point2 As New Point(100, 25)
Dim point3 As New Point(200, 5)
Dim point4 As New Point(250, 50)
Dim point5 As New Point(300, 100)
Dim point6 As New Point(350, 200)
Dim point7 As New Point(250, 250)
Dim curvePoints As Point() = {point1, point2, point3, point4, _
point5, point6, point7}
' Draw lines between original points to screen.
e.Graphics.DrawLines(redPen, curvePoints)
' Draw curve to screen.
e.Graphics.DrawCurve(greenPen, curvePoints)
End Sub
得到数据后,改point的数据。然后PictureBox1.Refresh()就行了
这个要用GDI+画。要看你.net版本。
以下是VS2005中的一段代码。
Me.PictureBox1.Height = 450
Me.PictureBox1.Width = 880
Dim gr As Graphics '定义画布
Dim bp As New Bitmap(880, 450) '定义位图,并进行赋值
Dim p As New Pen(Color.Black) '定义画笔
p.Width = 2 '宽度2
p.DashStyle = Drawing2D.DashStyle.Solid '样式直线
PictureBox1.Image = bp
gr = Graphics.FromImage(PictureBox1.Image)
gr.FillRectangle(Brushes.White, New Rectangle(0, 0, PictureBox1.Width, PictureBox1.Height))
gr.DrawLine(p, a, b, a, .Height - b) '绘制纵坐标
gr.DrawLine(p, a, .Height - b, .Width - a, .Height - b) '绘制横坐标
代码原理如下:
读取.wave
播放.wave
在播放的同时根据波形数据生成图形显示出来。
经过查找,可以在 工具--选项--文本编辑器-高级-禁用波形曲线,进行设置
我最近在VC上用TeeChart,有本书是讲这个的,上网搜搜就有 《teechart技术详解》
至于实例,我看网上大多不是delphi写的就是VB写的,应该不难找,VC的倒是不好找,我这有点资料,下午回实验室给你发
根据时间变化绘制的,即时的,或许可以用chart图表控件,百度会出现微软网站的资料。
sin曲线永远是哪个样子,你是怎么变化?一般的移动,可以用offset控制向左平移,右边则增加点,看上去应该是在移动