That won't work for me as I need control over the creation and saving processes as the images (or at least their names) are to be stored in the database. I want to avoid users having to now anything about Windows folders and filenames.
But I think I should beable to comine the solutions sample and Craig Boyd's stuff to get a satisfactory solution. Otherwise I've found a couple ActiveX controls that purport to do what I need.
>Just use ShellExecute() in all versions of Windows there is a Paint :o))) to handle BMPs.
>Happy hollydays to you too Frank.
>
>
>>I think the problem is that it was setting the area to capture before the form was maximised. Moved the code to the click method and it works fine.
>>
>>Next step is to let the user open a bitmap, display it on the screen, let them draw on it and then save it. Going to look at Craig Boyd's articles in Foxtalk for this and see how I can combine it with what we've got already.
>>
>>Thanks for all your help and hope you have a great Christmas and New Year.
>>
>>>Starange,
>>>It captures whole form at home. I must put some border to see, but that could be done this eveng :o(.
>>>
>>>>Thanks Borislav!
>>>>
>>>>it only appears to be capturing part of the form, but I should be able to work out why.
>>>>
>>>>Thanks a bunch!
>>>>
>>>>
>>>>>Frank,
>>>>>Download
CaptureButton class Download #
10013>>>>>Make the following Changes in FdProc.PRG (in HOME(2)+[Solution\Forms\Graphics\])
>>>>>
>>>>>
>>>>>ADD OBJECT cmdCapture AS CaptureButton WITH ;
>>>>> HEIGHT = CMDHT_LOC, ;
>>>>> WIDTH = CMDWIDTH2_LOC, ;
>>>>> Caption = "Capture", ;
>>>>> ToolTipText = CMDDONETIP_LOC, ;
>>>>> FontName = CMDFONTNAME, ;
>>>>> FontSize = CMDFONTSIZE
>>>>>
>>>>>
>>>>>PROCEDURE cmdCapture.Init
>>>>> WITH this
>>>>> .oForm = THISFORMSET.frmFD
>>>>> .nCaptureHeight = THISFORMSET.frmFD.Height
>>>>> .nCaptureWidth = THISFORMSET.frmFD.Width
>>>>> .nCaptureTop = THISFORMSET.frmFD.Top
>>>>> .nCaptureLeft = THISFORMSET.frmFD.Left
>>>>> .cFileName = [c:\Test.BMP]
>>>>> ENDWITH
>>>>> DODEFAULT()
>>>>>ENDPROC
>>>>>
>>>>>
>>>>>In Init Eevent of the FdMain.SCX (in the same folder), put:
>>>>>
>>>>>SET CLASSLIB TO [Full_path_to_capture.vcx] ADDITIVE
>>>>>
>>>>>
>>>>>In the Capture Class Add a Property named oForm and Search and Replace ALL instances of thisform with this.oForm in whole class code.
>>>>>
>>>>>Then jusr run sample and press Capture button. Look for Test.BMP in C:\