各位VB高手,请问在VB中怎样生成一个BMP位图文件,要调用API中的函数吗?或是什么结构,请帮忙写一下源代码(只有生成两个正方形,大的里面画小的),非常感谢
解决方案 »
- 请教下在image控件中显示图片的问题 (再次求助)
- 关于数组!
- MSCOMM问题
- 为何mshflexgrid绑定ado记录集后,数值型字段都是左对齐呢。数值如何靠右对齐呢?
- 各位,有没有VB的反编译程序???????????
- 没分了,可怜!求加密+解密算法: 加密:将A串(数字+字母)变成另一串B串(数字+字母)(唯一),解密:将B串(数字+字母)还原成A串(数字+字母)(唯一
- 在98+vb6编译的程序是不是不能在XP下面用?为什么、?
- 谁有activebar的使用方法,一定要中文的。谢谢
- 如何在ListView的已有记录的前面添加记录?
- 花5000元帮我写个程序
- 关于msflexgrid的CellBackColor属性.
- 急,谁有转换数字的源代码
bfType(1 To 2) As Byte
bfSize As Long
bfReserved1 As Integer
bfReserved2 As Integer
bfOffBits As Long
End TypePublic Type RGBQuad
rgbBlue As Byte
rgbGreen As Byte
rgbRed As Byte
rgbReserved As Byte
End Type
Public Declare Function GetDIBColorTable Lib "gdi32" (ByVal hDC As Long, ByVal un1 As Long, ByVal un2 As Long, pRGBQuad As RGBQuad) As LongPrivate Function ChkFileWrite(FileName As String) As Boolean
Dim FileNum As Integer
FileNum = FreeFile
On Error Resume Next
Open FileName For Output As #FileNum
If Err.Number Then
'
Else
Close #FileNum
ChkFileWrite = True
End If
On Error GoTo 0
End FunctionPublic Function SaveBMP(FileName As String) As Boolean
Dim FileNum As Integer
Dim TempBMFH As BITMAPFILEHEADER
Dim TCB() As RGBQuad
Dim TempBytes() As Byte
If (ChkFileWrite(FileName) = False) Or (MyPtr = 0) Then Exit Function
TempBMFH.bfType(1) = Asc("B")
TempBMFH.bfType(2) = Asc("M")
TempBMFH.bfOffBits = Len(TempBMFH) + Len(MyBMI.bmiHeader)
If MyBMI.bmiHeader.biBitCount <= 8 Then
TempBMFH.bfOffBits = TempBMFH.bfOffBits + 4 * 2 ^ MyBMI.bmiHeader.biBitCount
ReDim TCB(1 To 2 ^ MyBMI.bmiHeader.biBitCount)
GetDIBColorTable MyhDC, 0, 2 ^ MyBMI.bmiHeader.biBitCount, TCB(1)
End If
TempBMFH.bfSize = TempBMFH.bfOffBits + MyBMI.bmiHeader.biSizeImage
ReDim TempBytes(1 To MyBMI.bmiHeader.biSizeImage)
CopyMemory TempBytes(1), ByVal MyPtr, MyBMI.bmiHeader.biSizeImage
FileNum = FreeFile
Open FileName For Binary As #FileNum
Put #FileNum, , TempBMFH
Put #FileNum, , MyBMI.bmiHeader
If MyBMI.bmiHeader.biBitCount <= 8 Then Put #FileNum, , TCB
Put #FileNum, , TempBytes
Close #FileNum
SaveBMP = True
End Function