关于vb.net推移图实例的信息

vb.net 未将对象引用设置到对象的实例

1、首先要有DataGridView1控件

10年积累的成都网站建设、成都网站制作经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先做网站设计后付款的网站建设流程,更有烈山免费网站建设让你可以放心的选择与我们合作。

2、检查是否有“图形文件名”这一列,用j = Me.DataGridView1.Columns(1).Index (假设图形文件名在第二列)试试

vb.net中GetClientRect()函数的问题

对不起,我没有学过vb.net,但是学过vb,希望这个可以

解决您程序的毛病。首先您注意以下两种GetClientRect

声明的方法:

Option Explicit

Private Declare Function GetClientRect Lib "user32" ( _

ByVal hwnd As Long, _

ByRef lpRect As RECT _

) As Long

Private Type RECT

Left As Long

Top As Long

Right As Long

Bottom As Long

End Type

Private Sub Form_Load()

Dim r As RECT

Me.AutoRedraw = True

GetClientRect Me.hwnd, r

Print r.Left

Print r.Right

Print r.Top

Print r.Bottom

End Sub

----------------------------------------------------------------------------

Option Explicit

Private Declare Function GetClientRect Lib "user32" ( _

ByVal hwnd As Long, _

ByVal lpRect As Long _

) As Long

Private Type RECT

Left As Long

Top As Long

Right As Long

Bottom As Long

End Type

Private Sub Form_Load()

Dim r As RECT

Me.AutoRedraw = True

GetClientRect Me.hwnd, VarPtr(r)

Print r.Left

Print r.Right

Print r.Top

Print r.Bottom

End Sub

看出问题了没有,就在GetClientRect的第二个参数上:

一个是按地址传递,另一个是按值传递:

ByRef lpRect As RECT 用 GetClientRect Me.hwnd, r

ByVal lpRect As Long 用 GetClientRect Me.hwnd, VarPtr(r)

据我所知vb.net按值传递的比较多,应该用VarPtr获取RECT类型

(结构体)的指针,然后传递。

希望能对你有所帮助。

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.net中类的实例化

1.不正确

Dim abc As myClass,定义一个可以引用myClass类型对象的变量abc。这个abc变量存在于栈上。

abc=New myClass。New myClass创建myClass实例对象,这个对象存在于托管堆上。然后(同时)让abc引用(指向)这个对象。

abc变量在栈上,而对象在托管堆上。

abc储存的是对象的地址,而不是对象本身。

看下面的代码

Dim a As myClass,b As myClass,c As myClass

a=New myClass

b=a

c=a

整个过程中只创建了一个myClass对象,位于托管堆上。

三个myClass类型的变量a、b、c位于栈上,都指向了这一个myClass对象

2.类的成员分 实例成员 和 静态成员

实例成员 必须在实例对象上调用

静态成员 可以直接调用,不需要实例对象。

vb.net 中new的具体用法?以及实例化是什么意思?.

new 就是实例化,比如实例化一个类,你才能访问,,

好比,你是张三,把你的地址告诉了我,我在能找到你家在哪,这个过程就可以称为实例化。

使用New关键字建立一个新的对象和用它属的类来定义是一样的。New关键字可以被用作来建立一个窗体、类模块以及集合的实例。用户在设计的时候建立的每一个窗体都是一个类。New关键字能够用来建立一个类的实例。

可以通过以下步骤来建立一个类的实例:

(1)在窗体上画一个按钮和几个其他的控件。

(2)按钮的Click事件过程加入以下代码:

Dim x AS New Form1

x.Show

(3)运行程序,并且点击几次按钮,把最前面的窗体移开,因为窗体是一个有可视界面的类,此时可以看见有很多窗体的拷贝,每一个窗体具有相同的控件,并且出现在一个地方。

(4)将列代码加到按钮的click事件过程中:

Dim f As Form1

f=New Form1

f.text="hello"

f.Show

使用New关键字可以从类模块中定义的类中建立一个新的集合和对象,要知道它们怎样工作,可以参考下面的例子:

(1)建立一个新的工程,并且在一个名为Form1的窗体上画一个按钮控件。

(2)在Project(项目)菜单下,选择"Add Class"给工程添加一个类

(3)把新的类命名为ShowMe.VB

(4)在该新类中加入如下代码:

PUblic Class ShowMe

Sub ShowFrm()

Dim frmNew As Form1

frmNew=New Form1

frmNew.Show()

frmNew.WindowState=1

End Sub

End Class

(5)在Button1_click事件的过程中加入如下代码:Protected Sub Button1_Click(Byval sender As System.Object,_ Byval AS System.EventArgs) Dim clsNew As New ShowMe() clsNew.ShowFrm()End Sub

运行程序,并且点击几次按钮,将看见每创建一个ShowMe类的新的实例时,在桌面上有一个最小化的窗体的图标。

New关键字只能用来建立一个类的对象,不能建立一个基于基本的数据类型的对象,例如Integer。而且,不能建立一个基于一个具体对象的对象。例如,下面的代码根据一个名为SomeClass的类,建立了一个名为Objx的对象,面后又错误地企图根据对象Objx再建立一个其他的对象:

Dim Objx As New SomeClass()

Dim Objx AS New Objx()

以上代码是非法的。

呵呵##~


分享标题:关于vb.net推移图实例的信息
网站URL:http://azwzsj.com/article/dodeipe.html