have I just made things more confusing?
Actually thats pretty well clear ..Local myrect:RECT=New RECT myrect.r=123 ; myrect.b=252 InvertRect bufferDC,Byte Ptr(myrect.r)
I think the confusion comes from passing the myrect instance rather that the first field in the myrect type.
Afterall, whats the difference between these two? ..
Type RECT Field l%, t%, r%, b% ' left top right bottom End Type Local myrect:RECT=New RECT myrect.l=10 ; myrect.t=20 ; myrect.r=30 ; myrect.b=40 ' is this InvertRect bufferDC,Byte Ptr(myrect) ' the same as this? InvertRect bufferDC,Byte Ptr(myrect.l)