在DearPyGUI中回调后保持InputText的选中状态
实现输入框回车后保持选中状态
当然可以实现这个需求。你只需要在quiz_callback回调函数里,处理完答案验证逻辑后,手动让输入框重新获得焦点即可。
具体操作步骤:
- 在回调函数中先获取输入框内容,完成答案验证等业务逻辑
- 根据测验流程需要清空输入框内容(可选)
- 调用
dpg.focus_item("Quiz Input")让输入框重新获得焦点
修改后的回调函数示例:
def quiz_callback(sender, app_data, user_data): # 获取用户输入的答案 user_answer = dpg.get_value("Quiz Input") # 这里加入你的答案判断逻辑,比如和正确答案对比 # 示例:假设selector.selected_item[1]对应正确答案 if user_answer == selector.selected_item[1]: # 答对后的处理逻辑,比如切换下一题、提示正确等 pass else: # 答错后的处理逻辑 pass # 清空输入框并重新聚焦,确保无需点击即可继续输入 dpg.set_value("Quiz Input", "") dpg.focus_item("Quiz Input")
这样设置后,每次按回车提交答案,输入框会自动清空并保持选中状态,不用再次点击就能直接输入下一题的答案。
内容的提问来源于stack exchange,提问作者Ice
相关产品推荐
相关产品推荐

