Stephens - I - GraphicA -> CompatDC -> GraphicB

Category: Graphics - GDI

Date: 02-16-2022

Return to Index


 
'Compilable Example:  (Jose Includes)
#Compiler PBWin 9, PBWin 10
#Compile EXE
#Dim All
%Unicode=1
#Include "Win32API.inc"
Global hDlg, hBMP, hDC, hDCB, hMemDC As Dword
%IDC_Button = 500
%IDC_Graphic = 600
%IDC_GraphicB = 700
 
Function PBMain() As Long
   Dialog New Pixels, 0, "Test Code",300,300,250,160, %WS_OverlappedWindow To hDlg
   Control Add Button, hDlg, %IDC_Button,"Push", 10,10,100,20
   Control Add Graphic, hDlg, %IDC_Graphic,"Push", 10,40,100,100, %WS_Border
   Control Add Graphic, hDlg, %IDC_GraphicB,"Push", 130,40,100,100, %WS_Border
   Graphic Attach hDlg, %IDC_Graphic
   Graphic Render "cowgirl.bmp", (0,0)-(99,99)
   Graphic Get DC To hDC
   Dialog Show Modal hDlg Call DlgProc
End Function
 
CallBack Function DlgProc() As Long
   If Cb.Msg = %WM_Command And Cb.Ctl = %IDC_Button And Cb.CtlMsg = %BN_Clicked Then
      hBMP   = CreateCompatibleBitmap(hDC,99,99)
      hMemDC = CreateCompatibleDC(hDC)
      SelectObject(hMemDC,hBMP)
      BitBlt hMemDC,0,0,99,99,hDC,0,0,%SrcCopy
 
      Graphic Attach hDlg, %IDC_GraphicB
      Graphic Get DC To hDCB
      BitBlt hDCB,0,0,99,99,hMemDC,0,0,%SrcCopy
      Control ReDraw hDlg, %IDC_GraphicB
 
   End If
End Function
 
'gbs_00951
'Date: 03-10-2012


created by gbSnippets
http://www.garybeene.com/sw/gbsnippets.htm