Страница 1 из 2 12 ПоследняяПоследняя
Показано с 1 по 10 из 11

Тема: Как сделать инлайн клавиатура для телеграм бота на python с использованием aiogram?

  1. Как сделать инлайн клавиатура для телеграм бота на python с использованием aiogram?

    Привет, народ! Короче, начал тут разрабатывать своего телеграм-бота на Python с использованием библиотеки aiogram. Все идет норм, но столкнулся с проблемкой - не могу разобраться, как реализовать инлайн клавиатуру. Кто шарит, подскажите пару примеров кода или объясните на пальцах, как это все организовать? Буду рад любой помощи, заранее мега спасибо!



  2. Ждём вас в нашем чате в Телеграмм ==>> @pythoneer_chat

    А ТАКЖЕ: Канал о Python, статьи и книги ==>>
    @pythoneer_ru

  3. Привет! Вот тебе пример кода, дружище:

    Программный код:
    from aiogram import BotDispatchertypes
    from aiogram
    .utils import executor
    from aiogram
    .types import InlineKeyboardButtonInlineKeyboardMarkup

    API_TOKEN 
    'YOUR_API_TOKEN'

    bot Bot(token=API_TOKEN)
    dp Dispatcher(bot)

    # Создаем инлайн-клавиатуру
    inline_kb_full InlineKeyboardMarkup(row_width=2)
    inline_btn_1 InlineKeyboardButton('Button 1'callback_data='button1')
    inline_btn_2 InlineKeyboardButton('Button 2'callback_data='button2')
    inline_kb_full.add(inline_btn_1inline_btn_2)

    @
    dp.message_handler(commands=['start''help'])
    async def send_welcome(messagetypes.Message):
    await message.reply("Hi!
    I'm your bot!
    Press buttons below."
    reply_markup=inline_kb_full)

    @
    dp.callback_query_handler(lambda cc.data)
    async def process_callback(callback_querytypes.CallbackQuery):
    await bot.answer_callback_query(callback_query.idtext=f'You clicked: {callback_query.data}')

    if 
    __name__ == '__main__':
    executor.start_polling(dpskip_updates=True
    Надеюсь, поможет!

  4. Цитата Сообщение от Вереск
    Привет! Вот тебе пример кода, дружище:

    Программный код:
    from aiogram import BotDispatchertypes
    from aiogram
    .utils import executor
    from aiogram
    .types import InlineKeyboardButtonInlineKeyboardMarkup

    API_TOKEN 
    'YOUR_API_TOKEN'

    bot Bot(token=API_TOKEN)
    dp Dispatcher(bot)

    # Создаем инлайн-клавиатуру
    inline_kb_full InlineKeyboardMarkup(row_width=2)
    inline_btn_1 InlineKeyboardButton('Button 1'callback_data='button1')
    inline_btn_2 InlineKeyboardButton('Button 2'callback_data='button2')
    inline_kb_full.add(inline_btn_1inline_btn_2)

    @
    dp.message_handler(commands=['start''help'])
    async def send_welcome(messagetypes.Message):
    await message.reply("Hi!
    I'm your bot!
    Press buttons below."
    reply_markup=inline_kb_full)

    @
    dp.callback_query_handler(lambda cc.data)
    async def process_callback(callback_querytypes.CallbackQuery):
    await bot.answer_callback_query(callback_query.idtext=f'You clicked: {callback_query.data}')

    if 
    __name__ == '__main__':
    executor.start_polling(dpskip_updates=True
    Надеюсь, поможет!
    Четко! Как раз то, что нужно. А API_TOKEN - это где брать? В BotFather?

  5. Если отлично понимаешь как работает aiogram, то инлайн клавиатуры не должны быть проблемой. Важно не забывать использовать CallbackQuery для обработки нажатий, иначе будет пустая трата времени

  6. Цитата Сообщение от WhisperingForest272
    Если отлично понимаешь как работает aiogram, то инлайн клавиатуры не должны быть проблемой. Важно не забывать использовать CallbackQuery для обработки нажатий, иначе будет пустая трата времени
    Да, CallbackQuery - это основа. Еще есть нюансы с row_width, надо подбирать под себя.

  7. Можно сделать инлайн кнопки через types.InlineKeyboardMarkup и types.InlineKeyboardButton, например:

    Программный код:
    inline_kb types.InlineKeyboardMarkup()
    inline_btn types.InlineKeyboardButton('Жми'callback_data='pressed')
    inline_kb.add(inline_btn
    И потом в функции отправки сообщения прикреплять это как reply_markup.

  8. Цитата Сообщение от Гарри
    Можно сделать инлайн кнопки через types.InlineKeyboardMarkup и types.InlineKeyboardButton, например:

    Программный код:
    inline_kb types.InlineKeyboardMarkup()
    inline_btn types.InlineKeyboardButton('Жми'callback_data='pressed')
    inline_kb.add(inline_btn
    И потом в функции отправки сообщения прикреплять это как reply_markup.
    А если много кнопок, тоже через add добавлять? Как сделать красивую сетку кнопок?

  9. Ещё народ юзает row_width при создании клавиатуры, оно разбивает кнопки на ряды. Вот так:

    Программный код:
    inline_kb InlineKeyboardMarkup(row_width=2# два кнопки в ряд
    inline_btn1 InlineKeyboardButton("Кнопка 1"callback_data="btn1")
    inline_btn2 InlineKeyboardButton("Кнопка 2"callback_data="btn2")
    inline_kb.add(inline_btn1inline_btn2
    Не парься, разберешься быстро!

  10. Цитата Сообщение от BoomBoom
    Ещё народ юзает row_width при создании клавиатуры, оно разбивает кнопки на ряды. Вот так:

    Программный код:
    inline_kb InlineKeyboardMarkup(row_width=2# два кнопки в ряд
    inline_btn1 InlineKeyboardButton("Кнопка 1"callback_data="btn1")
    inline_btn2 InlineKeyboardButton("Кнопка 2"callback_data="btn2")
    inline_kb.add(inline_btn1inline_btn2
    Не парься, разберешься быстро!
    Вот это хотел спросить! Но тогда нужно ли вызывать add для каждой кнопки или можно сразу все добавить?

Страница 1 из 2 12 ПоследняяПоследняя