This is the section where I'll mostly discuss new techniques or elaborate on current ones. This is the place to look for in-depth code, comments, screen shots, and sample projects. Further, anything I deem important and/or requires a deeper look will be placed here.  This is also a section where you can help out.  If you know any techniques that you'd like to share, and want to write an article, email me:

  • Sample Project #1 (By David Richards)
  • "True Transparency with TBitmaps"
    Graphics guru Dave Richards discusses how to achieve true transparency with the TBitmap control.
  • Sample Project #2 (By Damon Chandler) 
  • "Adding CheckBoxes to an owner-drawn ListView control"
    In this article, I discuss how to make a ListView owner-drawn, while maintaning checkboxes with full functionality.
  • Sample Project #3 (By Damon Chandler) 
  • "Double-buffering owner-drawn controls"
    In this article, I discuss some of the common causes of flicker, and demonstrate the tried and true double-buffering technique to achieve optimal performance. 
  • Sample Project #4 (By Damon Chandler)
  • "Drawing on a ListView's Header Control" 
    (BCB1 only -- use Custom Draw for BCB3+ -- see below) Customizing a ListView's Header control is common practice in some of the more advanced applications,  In this sample project, I'll show you to achieve this functionality
  • Coded Article (By Damon Chandler)
  • "Drag and Drop from Explorer"
    An intuitive user-interface is only as good as the functionality it supports. Ease of use if of primary concern in today's professional applications.  In this article, I'll show you two robust techniques to implement dragging files from Windows Explorer into your application.  It's easier than you may think!
  • Coded Article (By Damon Chandler)
  • "An Introduction to Custom Draw -- The TreeView Control"
    Custom Draw can added added flair and eye-candy to your application.  In this article I'll introduce you to the techniques of using this new technology with the TreeView control.
  • Coded Article (By Damon Chandler)
  • "Custom Draw(ing) the ListView's Header Control"
    Custom Drawing a ListView's header control offers more flexibility than the owner-drawn approach.  In this article I'll show you how to draw the header control in any color/font; even add bitmaps if needed.
  • Sample Project #5 (By Damon Chandler)
  • "Monitoring Directory Changes"
    How do I monitor the contents of a directory?  This is certainly a commonly asked question with a usually simple answer: Use the 
    FindFirstChangeNotification() API function.  While this is indeed the correct approach to take, the methods to actually accomplish this are not so straightforward.  In fact, FindFirstChangeNotification() is just a small part of making this work.  As such, the purpose of this article is to provide an more in-depth look at exactly what's involved in monitoring the contents of a folder. 
  • Sample Project #6 (By Damon Chandler)
  • "Playing and Recording Sound via the Wave API"
    While it is possible to use the MCI (directly or via the TMediaPlayer component) to record wave files, using the Wave API offers superior control.  In this article, I'll show you the basics of this low-level interface and demonstrate how to play and record waveform-audio.