
正文
vb.net图形标注 在vb中用什么来标识一条注释语句
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
vb.net读取txt的数据作图问题
一、分析:
1vb.net图形标注,这一类随时间而变化vb.net图形标注的曲线图,通常把横轴作为时间,把纵轴作为相应的值,在这里就是密度值。
2,点的集合就是线vb.net图形标注;一组时间、密度值,对应一个点,把点连接起来就构成vb.net图形标注了线。
二、在VB.NET中作图,需要知道并解决几个问题:
1,与VB6一样,VB.NET中默认的坐标系统,左上角为坐标原点,X轴的正向为从左向右,Y轴的正向是从上向下。
为vb.net图形标注了使得它与数学中的坐标系统相一致,可以使用VB.NET中Graphics类的两个方法;
1、TranslateTransform----平移变换
格式:Graphics.TranslateTransform(dx,dy)
其中:dx 和 dy分别是Single数据类型
2、ScaleTransform----缩放变换
格式:Graphics.ScaleTransform(sx,sy)
其中:sx 和 sy分别是Single数据类型;
例如:为了符合数学中的一般格式,可以使用下述代码:
Graphics.ScaleTransform(1, -1)
这样就把Y轴的正方向给翻过来了。
三、VB.NET中绘制图形
1,绘制圆或椭圆
'绘制图形的三步曲
'1,获得一个Graphics对象
Dim MyGraphics As Graphics
MyGraphics = Me.CreateGraphics
'2,定义一个Pen对象,用于绘制图形(轮廓线)
Dim MyPen As New Pen(Color.Black)
'3,定义一个Brush对象,用于填充图形(如果需要填充的话)
Dim MyBrush As New SolidBrush(Color.Orange)
'绘制一个实心圆,该圆在:直线x=200,y=200,x=200+100,y=200+100所划的矩形区域内
MyGraphics.FillEllipse(Brush, 200, 200, 100, 100)
'绘制一个空心圆,该圆在:直线x=200,y=200,x=200+100,y=200+100所划的矩形区域内
MyGraphics.DrawEllipse(Pen, 200, 200, 100, 100)
注意:最后两个数值如果不等,就是绘制椭圆
当圆足够小,就是点了。
2,绘制直线
'1,获得一个Graphics对象
Dim MyGraphics As Graphics
MyGraphics = Me.CreateGraphics
'2,定义一个Pen对象,用于绘制图形(轮廓线)
Dim MyPen As New Pen(Color.Black)
MyGraphics.DrawLine(MyPen, 200, 200, 100, 100)
'或者直接用
Me.CreateGraphics.DrawLine(New Pen(Color.Black), 50, 50, 200, 200)
相关问答
Q1: VB.net中如何画图?
VB.net与VB不同。
VB.net已经有专门绘图的类。
可以定义笔刷然后用Drawing类中的方法绘制。
Private Sub DrawEllipse()
Dim myPen As New System.Drawing.Pen(System.Drawing.Color.Red)
Dim formGraphics as System.Drawing.Graphics
formGraphics = Me.CreateGraphics()
formGraphics.DrawEllipse(myPen, New Rectangle(0,0,200,300))
myPen.Dispose()
formGraphics.Dispose()
End Sub
Private Sub DrawRectangle()
Dim myPen As New System.Drawing.Pen(System.Drawing.Color.Red)
Dim formGraphics as System.Drawing.Graphics
formGraphics = Me.CreateGraphics()
formGraphics.DrawRectangle(myPen, New Rectangle(0,0,200,300))
myPen.Dispose()
formGraphics.Dispose()
End Sub
Q2: vb.net chart控件条形图如何实现将X轴的数字1.2.3……变文字,如图所示
Dim DtRRU As DataTable = New DataTable()
DtRRU.Columns.Add("Time_Int")
DtRRU.Columns.Add("Bins")
DtRRU.Rows(0)("Time_Int") = "0~6月"
DtRRU.Rows(1)("Time_Int") = "6~12月"
DtRRU.Rows(2)("Time_Int") = "1~2年"
DtRRU.Rows(3)("Time_Int") = "2~3年"
DtRRU.Rows(4)("Time_Int") = "3~4年"
DtRRU.Rows(5)("Time_Int") = "4~6年"
DtRRU.Rows(6)("Time_Int") = "6年以上"
用chart.DataSource绑定DataTablevb.net图形标注, DataTable自己添加响应的名称就可以vb.net图形标注了,省略了一切代码,如果不懂可以告诉我……………………
With (ChartENC.Series(0))
.YValueMembers = "Bins"
.XValueMember = "Time_Int"
.XValueType = DataVisualization.Charting.ChartValueType.DateTime
.ChartType = DataVisualization.Charting.SeriesChartType.Column
End With
______________________________________________________________________
Q3: Vb.net怎么实现图像的处理
这问题有点笼统vb.net图形标注,软糖来说说把:
图像处理由System.Drawing命名空间负责。
主要是Bitmap类和Graphics类。
Bitmap表示一个位图vb.net图形标注,可以是BMP,JPG,PNG等文件。
装载位图
Dim 位图 As Bitmap = Bitmap.FromFile("C:\Image1.PNG")
Graphics表示一张画纸,能够进行绘制操作。
它可以被窗体、控件、位图调用CreateGraphics()方法来创建。
然后调用Graphics.Draw开头的一系列函数来绘制图像和图形,Fill开头的填充图形。
创建画纸并绘制位图
Dim 画纸 As Graphics = Me.CreateGraphics()
画纸.DrawImage(位图, 100, 100, 256, 256)
可以将上面三行放到Form1_Load中测试,把路径改一下,
还可以把Me改为能在上面绘图的控件的名称。
更多内容请看MSDN的System.Drawing命名空间。
如满意,请采纳,谢谢。
Q4: VB.NET中怎么在图片上直接输出文字。向VB中有Print的方法
两种方法:
图片框上盖个Label 向其输入内容。
载入图片,通过内存直接 DrawImage绘制个新图,然后在图上盖文字。最后赋值给图片框。
VB6的print 实质是向图片框打印文字,不管有无图都能在上面Print. 考虑速度和实现难度问题,如果纯粹显示,最好直接盖个Label最简单。第二种方法 需要考虑文字大小、颜色、坐标定位等等。如果一行文字显示不下,不会自动换行,得自己切。
Q5: VB.NET:绘图后,如何才能取得所绘图形的颜色值?
加入一个TextBox控件,一个Command控件
代码:
Private Declare Function GetPixel Lib "gdi32" (ByVal hDC As Long, ByVal X As Long, ByVal Y As Long) As Long
Private Declare Function GetWindowDC Lib "user32" (ByVal hWnd As Long) As Long
Private Sub Command1_Click()
Dim Color As Long
WindowDC = GetWindowDC(0) '获取屏幕的设备场景
Color = GetPixel(WindowDC, 500, 100) '获指定点的颜色
'分解RGB颜色值
R = (Color Mod 256) '红色
b = (Int(Color \ 65536)) '蓝色
G = ((Color - (b * 65536) - R) \ 256) '绿色
Text1.BackColor = RGB(R, G, b)
End Sub
关于vb.net图形标注和在vb中用什么来标识一条注释语句的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。







