>Re: print screen more options > >Author: mary stickney >Email: mstickne@rev.state.ne.us >Date: 1997/12/23 >Forums: microsoft.public.fox.programmer.exchange >Message-ID: <01bd0fda$aef32760$0100007f@LocalHost> >References: <01bd0b2c$62882cc0$0100007f@LocalHost> <01bd0cbd$7c9da3a0$0100007f@LocalHost> <349B2EF4.287D05E6@nbnet.nb.ca> >fewer headers > author profile >view thread > > > > >-------------------------------------------------------------------------------- > >ok here goes: >1. set the desktop property of your form to .t. >2. _msedit must be available >3. type CREATE CURSOR screen_capture(SCREEN G) in the comand window >4. you need to make a report called printscr >5. Add the cursor to the Dataenvironment of the report. >6. Add an OLE bound object to the report >7. Set the field to Screen_capture.screen. >8. in your command button: > ** CMDPRINT CLICK EVENT > set sysmenu on && so _msedit is available > MTOP = THISFORM.TOP && store top position of form (program moves form) > do printscrn && do program > set sysmenu off && set menu back off if you want > THISFORM.TOP = (MTOP) && put form back where it was > > >*** print screen program > >LOCAL calias,tabused > >IF USED(ALIAS()) > calias = ALIAS() > tabused = .T. >ELSE > tabused = .F. >ENDIF > >** declare win32api command >DECLARE INTEGER keybd_event IN win32api; >INTEGER,INTEGER,INTEGER,INTEGER > >** execute an alt-printscreen to capture window >keybd_event(44,0,0,0) > >** on report form we print a bitmap from a field so create a cursor >CREATE CURSOR screen_capture(SCREEN G) >APPEND BLANK > >** copy bitmap outsideof visable work area >DEFINE WINDOW screen_capture FROM 1,1 TO 100,100 >MODIFY GENERAL screen_capture.SCREEN NOWAIT WINDOW screen_capture > >KEYBOARD "{ctrl+V}{ctrl+W}" > >RELEASE WIND screen_capture >DOEVENTS > >IF !EMPTY(screen_capture.SCREEN) > SELECT screen_capture > REPORT FORM printscr.frx to print >ELSE > WAIT WINDOW 'Sorry, you cannot do a print screen of this form' >ENDIF > >IF tabused > SELECT (calias) >ENDIF > >>