Курсор виден, когда виджет находится в фокусе, что важно, когда пользователь вводит текст в виджет.
Если вам не нужен курсор, задокументированный способ - установить состояние на "только для чтения". Из канонической документации:
Если запись доступна только для чтения, то значение не может быть изменено с помощью команд виджета, и курсор вставки не будет отображаться , даже если фокус ввода в виджете; содержимое виджета все еще может быть выбрано.
Проблема также может заключаться просто в том, что когда вы где-то щелкаете, это «где-то еще» не предназначено для захвата фокуса клавиатуры. Если вы отрегулируете свои привязки так, чтобы то, что вы нажимаете, получало фокус, тогда фокус будет удален с виджета ввода, а курсор будет скрыт до тех пор, пока фокус не будет восстановлен.
Например, если вы создаете элементы на холст, вы можете создать привязку для перемещения фокуса на холст, когда вы щелкаете по нему:
the_canvas.bind("<1>", lambda event: event.widget.focus_set())
Когда вы щелкаете по холсту, фокус перемещается на холст и от входа, поэтому запись больше не будет отображать курсор.