vb.net怎样创建图片 vb如何添加图片

大佬们~VisualStudio中vb.net如何画三角函数图像?

VB系统的坐标原点在左上角,X轴的正方向是水平向右,而Y轴的正方向是垂直向下。所以,要绘制三角函数的曲线,自己可以通过改变点坐标的方法来实现,当然,VB.NET提供了相应的方法可以来实现坐标变换,也可以通过VB.Net的Graphics类提供的平移、旋转等转换来实现。

犍为网站制作公司哪家好,找成都创新互联公司!从网页设计、网站建设、微信开发、APP开发、成都响应式网站建设公司等网站项目制作,到程序开发,运营维护。成都创新互联公司于2013年成立到现在10年的时间,我们拥有了丰富的建站经验和运维经验,来保证我们的工作的顺利进行。专注于网站建设就选成都创新互联公司

下面是我通过自己变换实现的示例,提供参考;我的环境是VB.NET 2010

Imports System.Math

Public Class Form1

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

  '1,获得一个Graphics对象

  Dim MyGraphics As Graphics

  MyGraphics = PictureBox1.CreateGraphics

  '2,定义一个Pen对象,用于绘制图形(轮廓线)

  Dim MyPen As New Pen(Color.Black, 1)

  '3,定义一个Brush对象,用于填充图形(如果需要填充的话)

  Dim MyBrush As New SolidBrush(Color.Orange)

  MyGraphics.DrawLine(MyPen, 0, 200, 700, 200)

End Sub

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click

  '1,获得一个Graphics对象

  Dim MyGraphics As Graphics

  MyGraphics = PictureBox1.CreateGraphics

  '2,定义一个Pen对象,用于绘制图形(轮廓线)

  Dim MyPen As New Pen(Color.Black, 1)

  '3,定义一个Brush对象,用于填充图形(如果需要填充的话)

  Dim MyBrush As New SolidBrush(Color.Orange)

  '声明横向和纵向比例变量

  Dim Heng As Integer = 20

  Dim Zong As Integer = 50

  '先获得正弦值,保存到点坐标数组

  Dim MyPoints(700) As Point

  Dim i As Integer

  For i = 0 To 700

      MyPoints(i) = New Point(i * Heng, 200 + Sin(i) * Zong)

  Next

  '采用绘制光滑线连接点的方式绘制曲线

  MyGraphics.DrawCurve(MyPen, MyPoints)

End Sub

End Class

显示的效果图:

vb.net中,如何像下图一样,用很简单的办法,导入1000张图片。

很简单的方法,貌似没有。这个需要自己写很多代码:

用一个ListView控件。

判断滚动条当前所显示的图片集合,获取它们的物理路径。

用Bitmap.FromImage方法把这些图片读出来,

然后获取缩略图,

把缩略图用Graphics.DrawImage()绘制出来。

我可以提供Bitmap如何获取缩略图的方法:

''' summary必须创建一个委托并将对此委托的引用作为获取缩略图 callback 参数传递,但不使用此委托。/summary

Public Function ThumbnailCallback() As Boolean

Return False

End Function

''' summary返回Image,表示图像指定 宽 和 高 的缩略图。/summary

Public Function 获取缩略图(位图 As Bitmap, 宽 As Integer, 高 As Integer) As Image

Dim myCallback As New Image.GetThumbnailImageAbort(ThumbnailCallback)

Return 位图.GetThumbnailImage(宽, 高, myCallback, IntPtr.Zero)

End Function

vb 如何使部分窗体生成图片

只要将VB窗口内的需要部分保存成图片文件就可以了

要用到API函数的:

Private Type POINTAPI

x As Long

y As Long

End Type

Private Declare Function BitBlt Lib "gdi32" (ByVal hDestDC As Long, ByVal x As Long, ByVal y As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal hSrcDC As Long, ByVal xSrc As Long, ByVal ySrc As Long, ByVal dwRop As Long) As Long

Private Declare Function GetDC Lib "user32" (ByVal hwnd As Long) As Long

Private Declare Function GetCursorPos Lib "user32" (lpPoint As POINTAPI) As Long

Private Declare Function DrawIcon Lib "user32" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long, ByVal hIcon As Long) As Long

Private Declare Function ReleaseDC Lib "user32" (ByVal hwnd As Long, ByVal hdc As Long) As Long

Private Sub Command1_Click()

Dim hdc As Long

Dim sw As Integer

Dim sh As Integer

Dim CurPos As POINTAPI

Dim Cur As Long

Me.Hide

DoEvents

Picture1.AutoRedraw = True

hdc = GetDC(0)

GetCursorPos CurPos

Cur = GetCursor

Picture1.Width = Screen.Width

Picture1.Height = Screen.Height

sw = Screen.Width / Screen.TwipsPerPixelX

sh = Screen.Height / Screen.TwipsPerPixelY

BitBlt Picture1.hdc, 0, 0, sw, sh, hdc, 0, 0, vbSrcCopy

Me.Show

DrawIcon Picture1.hdc, CurPos.x - 10, CurPos.y - 10, Cur

ReleaseDC 0, hdc

Picture1.AutoRedraw = False

以下放到模块里:

Option Explicit

Type RECT_Type

left As Long

top As Long

right As Long

bottom As Long

End Type

'The following declare statements are case sensitive.

Declare Function GetActiveWindow Lib "User32" () As Long

Declare Function GetDesktopWindow Lib "User32" () As Long

Declare Sub GetWindowRect Lib "User32" (ByVal Hwnd As Long, _

lpRect As RECT_Type)

Declare Function GetDC Lib "User32" (ByVal Hwnd As Long) As Long

Declare Function CreateCompatibleDC Lib "Gdi32" (ByVal hdc As Long) _

As Long

Declare Function CreateCompatibleBitmap Lib "Gdi32" (ByVal hdc _

As Long, ByVal nWidth As Long, _

ByVal nHeight As Long) As Long

Declare Function SelectObject Lib "Gdi32" (ByVal hdc As Long, _

ByVal hObject As Long) As Long

Declare Function BitBlt Lib "Gdi32" (ByVal hDestDC As Long, _

ByVal X As Long, ByVal Y _

As Long, ByVal nWidth As Long, _

ByVal nHeight As Long, _

ByVal hSrcDC As Long, _

ByVal XSrc As Long, _

ByVal YSrc As Long, _

ByVal dwRop As Long) As Long

Declare Function OpenClipboard Lib "User32" (ByVal Hwnd As Long) As Long

Declare Function EmptyClipboard Lib "User32" () As Long

Declare Function SetClipboardData Lib "User32" (ByVal wFormat As Long, _

ByVal hMem As Long) As Long

Declare Function CloseClipboard Lib "User32" () As Long

Declare Function ReleaseDC Lib "User32" (ByVal Hwnd As Long, _

ByVal hdc As Long) As Long

Declare Function DeleteDC Lib "Gdi32" (ByVal hdc As Long) As Long

Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)

Global Const SRCCOPY = HCC0020

Global Const CF_BITMAP = 2

Function ScreenDump()

Dim AccessHwnd As Long, DeskHwnd As Long

Dim hdc As Long

Dim hdcMem As Long

Dim rect As RECT_Type

Dim junk As Long

Dim fwidth As Long, fheight As Long

Dim hBitmap As Long

' DoCmd.Hourglass True

'---------------------------------------------------

' Get window handle to Windows and Microsoft Access

'---------------------------------------------------

DoEvents

DeskHwnd = GetDesktopWindow()

AccessHwnd = GetActiveWindow()

'---------------------------------------------------

' Get screen coordinates of Microsoft Access

'---------------------------------------------------

Call GetWindowRect(AccessHwnd, rect)

fwidth = rect.right - rect.left

fheight = rect.bottom - rect.top

'---------------------------------------------------

' Get the device context of Desktop and allocate memory

'---------------------------------------------------

hdc = GetDC(DeskHwnd)

hdcMem = CreateCompatibleDC(hdc)

hBitmap = CreateCompatibleBitmap(hdc, fwidth, fheight)

If hBitmap 0 Then

junk = SelectObject(hdcMem, hBitmap)

'---------------------------------------------

' Copy the Desktop bitmap to memory location

' based on Microsoft Access coordinates.

'---------------------------------------------

junk = BitBlt(hdcMem, 0, 0, fwidth, fheight, hdc, rect.left, _

rect.top, SRCCOPY)

'---------------------------------------------

' Set up the Clipboard and copy bitmap

'---------------------------------------------

junk = OpenClipboard(DeskHwnd)

junk = EmptyClipboard()

junk = SetClipboardData(CF_BITMAP, hBitmap)

junk = CloseClipboard()

End If

'---------------------------------------------

' Clean up handles

'---------------------------------------------

junk = DeleteDC(hdcMem)

junk = ReleaseDC(DeskHwnd, hdc)

' DoCmd.Hourglass False

End Function

这里是拖动鼠标的框里内容截取,你也可以改成固定范围的截取。

VB.NET 动态创建picturebox后如何用其image属性

这样了:

CType(Me.Controls("PictureBox11"), PictureBox).Image = My.Resources.image1

Find 返回数组,元素类型为Object。

Item() 可以把控件名作关键字,但也返回Object。这个方法是默认的,可以省略。

CType 转换引用类型。

大概如此,我是2008,没vb6那般的控件数组。


分享名称:vb.net怎样创建图片 vb如何添加图片
分享网址:http://azwzsj.com/article/ddcchjd.html