Articles 3D Audio Custom Controls General RB Graphics Hacks Mac OS X Menus Novelty Printing REALbasic 2005 REALbasic 2006 Registration Resources Reviews Serial Speech Sockets XML Video Resource Links News Current News February 2006 January 2006 December 2005 November 2005 October 2005 September 2005 August 2005 July 2005 June 2005 May 2005 April 2005 March 2005 ![]() REALbasic for Dummies by Erick Tejkowski ![]() Learning REALbasic through Applications REALbasic for Macintosh REALbasic Cross-Platform Application Development
Older files are in Stuffit 5 or greater format. Newer files are ".Zip". Download StuffIt Expander |
|
The tutorial emulates a Cocoa project available from Apple. As we progress through the project each week, we'll add various features to mimic the original Apple example. So, go check out the original code and come back here ready for some REALbasic coding. NOTE: This demo is made with OS X in mind. Augment the Interface
That's it for the interface enhancements, so let's move on to the code. Add the Code
Next, choose Edit-New Method and create a new method named: DrawMask. As you might have guessed, this method will draw the mask picture. First, the code selects a color based on the Popupmenu1 selection. Then, it fills in the Picture with a solid rectangle. Finally, using the Mask property of the Picture object, the code fills in the Picture with a transparent rectangle. ( using RGB(192,192,192) ) pictureMask = newpicture(canvas1.width,canvas1.height,32) Add this code to the Open event of Window1 initialize the new Picture: //prepare Mask image Then, add the same code to the Change event of PopupMenu1 to change the mask when the user selects a new color: //PopupMenu1.Change Next, change the existing code in the MouseDrag event of Canvas1 to track the drag operation using the new mask: //Canvas1.MouseDrag That's it! Choose Debug-Run to test your work. Click and drag in the image on the left side of the window to view a cropped version on the right side.
Conclusion |
||||
|
||||||||||||||||||||||||||||||||
Maintained by the Staff of ResExcellence. This entire site ©1997-2006 ResExcellence
Privacy Statement? Sure we gotta Privacy Statement.
[an error occurred while processing this directive]