一、c# 有几个imagebox选中的置顶

c#有多个imagebox选中的置顶。

show时把垫底的窗口对象作为参数。比如在form1中: form2 frm=new form2();frm.show(this);这样打开的form2窗口就保持在本窗口之上了。

imagebox VB中Image和PictureBox的区别

每个数据类型都有有符号和无符号两种类型.与Java相同的是,一个字符变量包含的是一个16位的Unicode字符,C#新的数据类型是decimal数据类型,对于货币数据,它能存放28位10进制数字。

数据类型:

C#拥有比C/C++或者Java更广泛的数据类型.这些类型是bool、byte、sbyte、short、ushort、int、uint、long、ulong、float、double和decimal。

而一个名叫string的类也象object一样是这个语言的一部分,作为语言的一部分存在意味着编译器有可能使用它,无论何时在程序中写入一句带引号的字串,编译器会创建一个string对象来保存它。

二、VB中Image和PictureBox的区别

图片框PictureBox和图像框ImageBox的区别在于:

imagebox VB中Image和PictureBox的区别

1-ImageBox使用系统资源少,重新绘图的数度较快

2-PictureBox只能使用print方法和绘图语句绘制图形,ImageBox则不能

3-ImageBox只能用于显示图片,而PictureBox除了可以显示图形外,还可以作为其他控件的容器,可以利用剪切板给PictureBox添加图形

4-ImageBox能够延伸图形的大小,以适应控件的大小,而PictureBox则不能,但PictureBox能自动调整控件大小以全图形显示出来

三、vb中利用picturebox或imagebox显示网络图片的问题

下面是在VB中显示网页图片的三种方法,其中第一种方法就是完全适合你的要求的:

第一种方法:如果知道图片的URL,那么可以直接在Picture1中显示:

Private Declare Function OleLoadPicturePath Lib"oleaut32.dll"(ByVal szURLorPath As Long, ByVal punkCaller As Long, ByVal dwReserved As Long, ByVal clrReserved As OLE_COLOR, ByRef riid As TGUID, ByRef ppvRet As IPicture) As Long

Private Type TGUID

Data1 As Long

Data2 As Integer

Data3 As Integer

Data4(0 To 7) As Byte

End Type

Public Function LoadPicture(ByVal strFileName As String) As Picture

Dim IID As TGUID

With IID

.Data1=&H7BF80980

.Data2=&HBF32

.Data3=&H101A

.Data4(0)=&H8B

.Data4(1)=&HBB

.Data4(2)=&H0

.Data4(3)=&HAA

.Data4(4)=&H0

.Data4(5)=&H30

.Data4(6)=&HC

.Data4(7)=&HAB

End With

On Error GoTo LocalErr

OleLoadPicturePath StrPtr(strFileName), 0&, 0&, 0&, IID, LoadPicture

Exit Function

LocalErr:

Set LoadPicture= VB.LoadPicture(strFileName)

Err.Clear

End Function

Private Sub Command1_Click()

Picture1.Picture= LoadPicture("")

End Sub

第二种方法:如果知道图片的URL,那么可以先把图片下载到本地,再在Picture1中显示:

Private Declare Function URLDownloadToFile Lib"urlmon" Alias"URLDownloadToFileA"(ByVal pCaller As Long, ByVal szURL As String, ByVal szFileName As String, ByVal dwReserved As Long, ByVal lpfnCB As Long) As Long

Private Sub Command1_Click()

URLDownloadToFile 0&,"", App.Path&"\bdlogo.gif", 0&, 0&

Picture1.Picture= LoadPicture(App.Path&"\bdlogo.gif")

End Sub

第三种方法:如果不知道图片URL,但知道网页的URL,那么可以用WebBrowser控件显示网页,再从中找到需要的图片显示到Picture1中:

Private Sub Command1_Click()

Dim CtrlRange As Object, img As Object

Set CtrlRange= WebBrowser1.Document.body.createControlRange

For Each img In WebBrowser1.Document.images

If InStr(img.src,"bdlogo") Then

CtrlRange.Add img

CtrlRange.execCommand"Copy"

Picture1.Picture= Clipboard.GetData

Exit For

End If

Next

End Sub

Private Sub Form_Load()

WebBrowser1.Navigate""

End Sub

以上方法都可以显示百度首页的那个Logo图片。相比而言,第一种方法是最好的,别看它代码最多,但它是完全用代码实现的,没有借助其他控件,也没有产生中间文件,用起来就好像网上的图片就是自己硬盘中的图片一样;第二种方法代码最简单,但它会产生硬盘文件,不过如果你恰巧需要下载文件的(就是说不但要显示,还想利用这个图片做其他操作),那么这个方法就是最佳选择了;第三种方法最复杂,需要用到网页控件,而且要用剪贴板过渡,不过如果你的软件本来就是需要用到网页控件的,或者你想获得同一网页的多张图片,那么这又是不二选择了。

补充说明:用URLDownloadToFile显示图片并不会比WebBrowser1.Navigate慢,可能还会更快一些,因为WebBrowser1也是把图片下载了再显示的,只不过它是把图片下载到IE的缓存区,第二次再运行的时候它就会直接到IE缓存区调用了,这个时候就是WebBrowser1快些。另外,WebBrowser1中的边框和滚动条都是可以去掉的,按照网页的处理方法就行了(网页都可以做到无边框无滚动条,WebBrowser1自然也可以)。