小弟刚学习VB,有几点不明白的地方,望各路大神帮忙
请问
1:如何调入位图到内存里?
2:如何取得窗口Dc,如何把位图blt到窗口Dc
3:如何接受窗口的键盘消息?
跪谢····

解决方案 »

  1.   

    呃···是我没表达清楚
    小弟我想把一个人物图,blt到另一幅风景图里。之前使用的是picturebox,可是这样我的键盘响应不能实现。很苦恼。还有就是DC使什么?是储存的图形内容吗?那我该怎么调用?怎么改变它?
      

  2.   


    Option Explicit
    Private Declare Function GetDC Lib "user32.dll" (ByVal hwnd As Long) As Long
    Private Declare Function ReleaseDC Lib "user32.dll" (ByVal hwnd As Long, ByVal hdc As Long) As Long
    Private Declare Function BitBlt Lib "gdi32.dll" (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 Const SRCCOPY As Long = &HCC0020Private Sub Command1_Click()
        Dim PicDC As Long
        Dim Wpic As Long, Hpic As Long
        
        Wpic = Picture1.Width
        Hpic = Picture1.Height
        
        '取得图片框DC
        PicDC = GetDC(Picture2.hwnd)
        Call BitBlt(PicDC, 0, 0, Wpic, Hpic, Picture1.hdc, 0, 0, SRCCOPY)
        
        '释放PicDC 
        Call ReleaseDC(Picture2.hwnd, PicDC)End SubPrivate Sub Form_Load()     Picture2.Width = Picture1.Width
         Picture2.Height = Picture1.HeightEnd Sub