Добавь процедуре Chk параметр типа TComponent и вызывай так:
Ну и соответственно в самой процедуре обращайся к этому параметру вместо Src.Components[x]. И объявление переменной x перемести "от греха поближе" к begin'у в котором организуется цикл с этой переменной.
Ну и ещё я не знаю что такое _HintCreate - может что-то с ней не так.
p.s. Я бы ещё немного упростил бы эту процедурку...