title: What is the purpose of the 'Tag' property of Delphi VCL components?
body: <p>Is there any specific purpose for the 'Tag' property of Delphi VCL components?
  I have Googled a few examples using it as, for example, a 'color' property or using the value as a pointer address, but is it 'good practice' to use it, or is it considered 'bad practice' as it ties the program logic to the UI?</p>