Задать вопрос
  • Что делать если InlineKeyboardButton показывает не весь текст aiogram3.0?

    febday
    @febday
    Генерация кнопок, конечно, претерпела изменений, но не до такой степени, чтобы убрать функцию вывода в столбик или строку

    Можно использовать InlineKeyboardBuilder
    from aiogram import types
    from aiogram.utils.keyboard import InlineKeyboardBuilder
    
    builder = InlineKeyboardBuilder()
    # 1 вариант (в строку)
    builder.row(
    	types.InlineKeyboardButton(text, callback_data),
    	types.InlineKeyboardButton(text, callback_data)
    )
    # ---
    # 2 вариант (в строку)
    builder.button(text, callback_data)
    builder.button(text, callback_data)
    # ---
    
    # 1 вариант (в столбец)
    builder.row(
    	types.InlineKeyboardButton(text, callback_data),
    	types.InlineKeyboardButton(text, callback_data),
    	width=1
    )
    # ---
    # 2 вариант (в столбец)
    builder.button(text, callback_data)
    builder.button(text, callback_data)
    builder.adjust(1)
    # ---


    Можно ещё придумать способы выстраивания кнопок, но думаю этого достаточно

    А если нужно через обычный InlineKeyboardButton, то вот:
    kb = [
    	[
    		types.InlineKeyboardButton(text, callback_data),
    		types.InlineKeyboardButton(text, callback_data)
    	],
    	[
    		types.InlineKeyboardButton(text, callback_data)
    	]
    ]
    keyboard = types.InlineKeyboardMarkup(inline_keyboard=kb)

    В этом случае каждый список является отдельной строкой
    Ответ написан
    1 комментарий