CustomTkinter中CTkEntry实现左上对齐与自动换行需求
解决CustomTkinter中多行文本输入自动换行的问题
你用的CTkEntry是单行输入组件,本身不支持多行自动换行和左上对齐的需求,要实现类似Stack Overflow提问框的效果,得换成CTkTextbox组件——这是CustomTkinter专门用来处理多行文本输入的控件。
替换后的代码示例:
text_prompt = ctk.CTkTextbox(settings, font=("Helvetica", 15), width=290, height=200, wrap="word", justify="left") text_prompt.place(relx=0.5, rely=0.7, anchor=ctk.CENTER) # 可选:让光标默认定位在左上角 text_prompt.focus_set()
关键属性说明:
wrap="word":文本到达右侧边缘时按完整单词自动换行,避免拆分单词;如果需要按字符强制换行,改成wrap="char"即可justify="left":设置文本左对齐,输入内容会从左上角开始排列CTkTextbox默认处于可编辑状态,后续若要锁定输入,可设置state="disabled"
这样就能实现你想要的常规多行文本输入效果了。
内容的提问来源于stack exchange,提问作者Wali Lambert
相关产品推荐
相关产品推荐

