def start(bot, update):
keyboard = [[InlineKeyboardButton("Apples", callback_data='1')],
[InlineKeyboardButton("Oranges", callback_data='2')],
[InlineKeyboardButton("Beans", callback_data='3')],
[InlineKeyboardButton("Rice", callback_data='4')],
[InlineKeyboardButton("Bread", callback_data='5')],
[InlineKeyboardButton("Tomatos", callback_data='6')],
[InlineKeyboardButton("Strawberry", callback_data='7')]
]
reply_markup = InlineKeyboardMarkup(keyboard)
update.message.reply_text('Multiple choice Quizz \nSelect all vegetables:', reply_markup=reply_markup)
使用InlineKeyboardMarkup,我是否可以在不隐藏或删除InlineKeyboardMarkup的情况下为用户按钮选择提供反馈?
例如,当用户选择InlineKeyboardButton时,我可以:
Change the InlineKeyboardButton text
Change the appearance of the InlineKeyboardButton
Edit initial message in update.message.reply_text ( )
我正在尝试查看是否可以进行多项选择问题,如果是,我需要提供一种方法让用户知道按钮已被选中或按下。
答案 0 :(得分:3)
是的,您可以使用用户所做的选择更新(编辑)当前消息文本,这是用户与内联按钮交互时的简单快速视觉反馈。
您可以使用editXXX
方法。
请参阅https://core.telegram.org/bots/api#updating-messages
editMessageText - 更改内联键盘之前的消息文本
editMessageReplyMarkup - 更改新的内联键盘
答案 1 :(得分:0)
如上所述:https://core.telegram.org/bots#inline-keyboards-and-on-the-fly-updating
是的!可以像@music bot一样更新键盘和消息
答案 2 :(得分:0)
作为解决方案,您可以使用表情符号来显示视觉效果。用户按下内联按钮后,编辑消息并向该按钮添加相对表情符号,以通知用户服务器反馈。