包含vb.net中的笔刷的词条

有关vb.net里的hatchbrush

Imports System.Drawing.Drawing2D

10多年的通许网站建设经验,针对设计、前端、开发、售后、文案、推广等六对一服务,响应快,48小时及时工作处理。成都全网营销的优势是能够根据用户设备显示端的尺寸不同,自动调整通许建站的显示方式,使网站能够适用不同显示终端,在浏览器中调整网站的宽度,无论在任何一种浏览器上浏览网站,都能展现优雅布局与设计,从而大程度地提升浏览体验。创新互联建站从事“通许网站设计”,“通许网站推广”以来,每个客户项目都认真落实执行。

Public Class Form1

Private Sub Form1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Click

'定义一个 Graphics对象

'调用窗体的CreateGraphics 方法创建 Graphics 对象

Dim g As Graphics

g = Me.CreateGraphics

'创建用实心菱形图案进行绘制,并使用红色作为前景色,蓝色作为背景色的画笔

Dim aHatchBrush As HatchBrush = New HatchBrush(HatchStyle.SolidDiamond, Color.Red, Color.Blue)

'创建矩形的位置和大小

Dim x As Integer = 0

Dim y As Integer = 0

Dim width As Integer = 150

Dim height As Integer = 200

'调用图形方法FillRectangle 将定义的矩形绘制到创建Graphics 对象上

g.FillRectangle(aHatchBrush, x, y, width, height)

End Sub

End Class

VB.NET 下给Listbox 添加图片或者渐变背景。

在普通window应用程序中的背景是不能有ALPHA通道的

既然是.net,试试用WPF窗体吧:

Listbox1.Background=New SolidBrush(Color.FromARGB(200,0,0,0))

当然你要是了解.net的笔刷类,绘制复杂的背景也不成问题

请问vb.net中如何动态刷新绘制的图形?

如果是画在控件上的就是

控件.Invalidate() 或者 控件.Refresh()

这样就会引发控件的Paint事件

如果是画到Bitmap里面的就重新执行绘制的过程就行了

VB.net一个很简单的UI问题

花了二十分钟给你写了代码,已测试。建议学习并使用System.Drawing绘制。

主要是掌握Graphics.FillRectangle和DrawString的使用。

Imports System.Drawing

Public Class 进度条UI

Public 上面笔刷 As SolidBrush = New SolidBrush(Color.FromArgb(192, 175, 238, 238))

Public 下面笔刷 As SolidBrush = New SolidBrush(Color.FromArgb(192, 30, 144, 255))

Public 文字笔 As SolidBrush = New SolidBrush(Color.FromArgb(255, 255, 255, 255))

Public 字体 As Font = New Font("微软雅黑", 14.0)

Public 文字格式 As StringFormat = New StringFormat() With

{.Alignment = StringAlignment.Center, .LineAlignment = StringAlignment.Center}

''' summary

''' 绘制指定进度的图像。

''' 当进度变化时调用一次本方法,建议将创建的Graphics对象保存到变量而不要重复创建。。

''' /summary

''' param name="控件"绘制到此控件的工作区/param

''' param name="g"绘制到控件的Graphics对象,例如 Button1.CreateGraphics()/param

''' param name="进度"进度百分比实数,57% = 0.57/param

Public Sub 绘制(ByRef 控件 As Control, ByRef g As Graphics, ByVal 进度 As Double)

Dim 矩形 = 控件.ClientRectangle '获取控件的工作区矩形

Dim 下面高度 = CInt(矩形.Height * 进度) '获取下面颜色块的高度

Dim 中间位置 = 矩形.Top + 矩形.Height - 下面高度 '获取中间分界线的Y坐标

Dim 上矩形 = New Rectangle(矩形.X, 矩形.Y, 矩形.Width, 矩形.Height - 下面高度)

Dim 下矩形 = New Rectangle(矩形.X, 中间位置, 矩形.Width, 下面高度)

g.FillRectangle(上面笔刷, 上矩形)

g.FillRectangle(下面笔刷, 下矩形)

'绘制文字

Dim 文字 As String = String.Format("{0:0.00}%", 进度 * 100)

g.DrawString(文字, 字体, 文字笔, 矩形, 文字格式)

End Sub

End Class

下面是Form1窗体的代码:添加一个Button1和Timer1控件,将Button1尺寸拖大点

Public Class Form1

Public g As Graphics

Public 进度条UI As New 进度条UI

Public 进度 As Double

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

g = Button1.CreateGraphics()

Timer1.Enabled = Not Timer1.Enabled

End Sub

Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick

进度 += 0.01

进度条UI.绘制(Button1, g, 进度)

End Sub

End Class

VB.net中如何画图?

分类: 电脑/网络 程序设计 其他编程语言

问题描述:

VB6中的form1.circle (100,200),rgb(0,255,0)的语句如何在VB中使用啊?

急用啊!!!!!!!!

解析:

VB与VB不同。

VB已经有专门绘图的类。

可以定义笔刷然后用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


分享标题:包含vb.net中的笔刷的词条
地址分享:http://hbruida.cn/article/hheeoi.html