Как поставить кнопку "Назад" после каждого перехода на новое окно после нажатия кнопки?
@bot.message_handler(commands=['start'])
def start(message):
markup = types.InlineKeyboardMarkup()
btn1 = types.InlineKeyboardButton('О нас', callback_data='bind1')
markup.row(btn1)
btn2 = types.InlineKeyboardButton('Тарифы', callback_data='bind2')
btn3 = types.InlineKeyboardButton('Exchange', callback_data='bind3')
markup.row(btn2,btn3)
btn4 = types.InlineKeyboardButton('Конвертер', callback_data='bind4')
btn5 = types.InlineKeyboardButton('FAQ', callback_data='bind5')
markup.row(btn4,btn5)
btn6 = types.InlineKeyboardButton('Поддержка', callback_data='bind6')
markup.row(btn6)
bot.send_message(message.chat.id, f"""
Привет,?{message.from_user.first_name}?{message.from_user.username}?
Добро пожаловать
"""
, parse_mode='html', reply_markup=markup)
@bot.callback_query_handler(func=lambda callback: True)
def callback_message(callback):
if callback.data == 'bind1':
bot.send_message(callback.message.chat.id, f"""qwrbtqwrbt"""
, parse_mode= 'html')
if callback.data == 'bind2':
bot.send_message(callback.message.chat.id, f"""qwrtbqwrbtqwrb"""
, parse_mode= 'html')
if callback.data == 'bind3':
bot.send_message(callback.message.chat.id, f"""TBRWATB"""
, parse_mode= 'html')
if callback.data == 'bind4':
bot.send_message(callback.message.chat.id, f"""sfgbasbt"""
, parse_mode= 'html')
if callback.data == 'bind5':
bot.send_message(callback.message.chat.id, f"""asrgbrasbgs"""
, parse_mode= 'html')
if callback.data == 'bind6':
bot.send_message(callback.message.chat.id, f"""sdgfsdvhsdhb"""
, parse_mode= 'html')
Ответы (1 шт):
Автор решения: Amgarak
→ Ссылка
Небольшой пример для вас:
import telebot
from telebot import types
bot = telebot.TeleBot('TOKEN')
@bot.message_handler(commands=['start'])
def start(message):
send_menu(message)
def send_menu(message):
keyboard = types.InlineKeyboardMarkup()
buttons = [
types.InlineKeyboardButton("кнопка 1", callback_data="Option 1"),
types.InlineKeyboardButton("кнопка 2", callback_data="Option 2"),
types.InlineKeyboardButton("кнопка 3", callback_data="Option 3"),
types.InlineKeyboardButton("кнопка 4", callback_data="Option 4"),
types.InlineKeyboardButton("кнопка 5", callback_data="Option 5"),
types.InlineKeyboardButton("кнопка 6", callback_data="Option 6")
]
keyboard.add(*buttons)
bot.delete_message(message.chat.id, message.message_id)
bot.send_message(message.chat.id, f"""
Привет,?{message.from_user.first_name}?{message.from_user.username}?
Выберите опцию:
""", parse_mode='html', reply_markup=keyboard)
def send_back_button(text,message):
keyboard = types.InlineKeyboardMarkup()
button = types.InlineKeyboardButton("Back", callback_data="Back")
keyboard.add(button)
bot.edit_message_text(text, message.chat.id, message.message_id, reply_markup=keyboard)
@bot.callback_query_handler(func=lambda call: call.data == "Option 1")
def handle_message_1(call):
send_back_button("Вы выбрали опцию 1",call.message)
@bot.callback_query_handler(func=lambda call: call.data == "Option 2")
def handle_message_2(call):
send_back_button("Вы выбрали опцию 2",call.message)
@bot.callback_query_handler(func=lambda call: call.data == "Option 3")
def handle_message_3(call):
send_back_button("Вы выбрали опцию 3",call.message)
@bot.callback_query_handler(func=lambda call: call.data == "Option 4")
def handle_message_4(call):
send_back_button("Вы выбрали опцию 4",call.message)
@bot.callback_query_handler(func=lambda call: call.data == "Option 5")
def handle_message_5(call):
send_back_button("Вы выбрали опцию 5",call.message)
@bot.callback_query_handler(func=lambda call: call.data == "Option 6")
def handle_message_6(call):
send_back_button("Вы выбрали опцию 6",call.message)
@bot.callback_query_handler(func=lambda call: call.data == "Back")
def handle_message_7(call):
send_menu(call.message)
bot.polling()