PUBLIC Custom Component KeywordWindows/Unix

Use inside a TYPE ... EXTENDS {QOBJECT}  ... END TYPE block

When you write
PRIVATE:
{all methods and properties only accessed within the TYPE...END TYPE block }

PUBLIC:
{all methods and properties now can be accessed outside TYPE...END TYPE block }

for details see chapter10.html, creating custom components

The reason you have PUBLIC and PRIVATE members is mainly for your end-user's sake. Obviously you'll know what members shouldn't be used outside its scope, but by defining PRIVATE members you tell your end-users not to touch these in your program since they are used "internally."