@yasegor

Как изменить Inline menu в сообщении на другое Inline menu (aiogram)?

В общем, хочу сделать так, что бы при нажатии на `Inline` кнопку мне выводилось следующее `Inline` меню в том же сообщении.

У меня вот такой вот код:

#bot.py

@dp.message_handler(text=['Магазин'])
async def shop(message: types.Message):
    await  message.answer("Выберите подраздел: ", reply_markup=kb.inline_kb_full2)


#keyboards.py

inline_btn_3 = InlineKeyboardButton('A', callback_data='A')
inline_btn_4 = InlineKeyboardButton('B', callback_data='B')
inline_btn_5 = InlineKeyboardButton('C', callback_data='C')
inline_kb_full2 = InlineKeyboardMarkup(row_width=1).add(inline_btn_3,inline_btn_4,inline_btn_5)


Надо что бы при нажатии на "A" у меня появлялось следующее меню:

inline_btn_6 = InlineKeyboardButton('1', switch_inline_query_current_chat='')
inline_btn_7 = InlineKeyboardButton('2', switch_inline_query_current_chat='')
inline_btn_8 = InlineKeyboardButton('3', switch_inline_query_current_chat='')
inline_btn_9 = InlineKeyboardButton('Назад ↩️',callback_data='Back')
inline_kb_full3 = InlineKeyboardMarkup(row_width=1).add(inline_btn_6,inline_btn_7,inline_btn_8,inline_btn_9)


Что мне дописать в bot.py, что бы при нажатии одной кнопки в меню открывать уже другое меню?
P.S.: В кодинге я очень слаб
  • Вопрос задан
  • 1257 просмотров
Пригласить эксперта
Ответы на вопрос 1
@Ryslan_13
from Ukreun
@dp.message_handler(text=['Магазин'])
async def shop(message: types.Message):
	await message.answer("Выберите подраздел: ", reply_markup=inline_kb_full2)

@dp.callback_query_handler(lambda c: c.data == 'A')
async def process_callback_button1(callback_query: types.CallbackQuery):
    await bot.answer_callback_query(callback_query.id)
    await bot.send_message(callback_query.from_user.id, 'Нажата первая кнопка!', reply_markup=inline_kb_full3)

Вот этот код все сделает как надо

@dp.callback_query_handler(lambda c: c.data == 'A')
async def process_callback_button1(callback_query: types.CallbackQuery):
    await bot.answer_callback_query(callback_query.id)
    await bot.send_message(callback_query.from_user.id, 'Нажата первая кнопка!', reply_markup=inline_kb_full3)
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы