Hi,

This is my first post and I'm pretty new to Delphi so be nice...

I'm in the process of writing a tile based game (along the lines of the original Ultima games) and I was encountering a slight problem with the graphics flickering when I re-draw the image (I'm using a TBitmap canvas).

I'm looking for the best way to eliminate this; I'm not lazy so I have been trying myself and so far here are my results...

1) Creating the image made up from the tiles on a seperate canvas then just copying that canvas to the visible canvas on screen when it is fully updated... doesn't eliminate flicker (I thought this was double-buffering? Am I wrong? Or just doing it incorrectly?)

2) Intercepting the windows paint messages a la the bitmap example in the help files (I'm using Delphi 6). This is fine except that *only* my image that is made up of the tiles is being updated now not the rest of the form. ie, this solution doesn't really work for me either.

3) Form1.Doublebufferd := True; This solution works perfectly on almost every level... In other words it works but it gives me no understanding of why or how (which is what I'd like!!)

Can anybody help?! I'm looking for suggestions on how to eliminate the flicker using these or other methods and also a more clear understanding of the DoubleBuffered property of forms?

Thanks!

Neil