If Instr(name$,"knon"); определяем кнопку...
EntityPickMode child, 2
NameEntity child,"knone" ; именуем объект
EndIf
Второй раз незачем именовать, ведь чилд уже изначально был назван "knon", вот его и ищи. Тебе щас нужно продебажить код на прохождение условий, просто в каждое условие вставь строку
If Instr(name$,"knon"); определяем кнопку...
DebugLog "True"
...
EndIf
и запусти в debug режиме. Если будет писаться в текстовом поле "True", значит он прошел это условие и ты будешь знать в каком месте не сходиться.