|
Теги. bot теги. Бот создан, настроен, но как его запустить Если сейчас мы перейдём в нашего бота и запустим его, то мы получим Ничего мы и не получим, т к. мы только создали бота
Callback-кнопки
#Какие-то импорты... from telebot import types #Какой-то код... @bot.message_handler(commands=['callback']) def cmd_start(message) : start_keyboard = types.InlineKeyboardMarkup() Hack_Pentagon = types.InlineKeyboardButton(text= 'Hack Pentagon' , callback_data= 'HackPentagon' ) Snorovka_School = types.InlineKeyboardButton(text= 'Snorovka School' , callback_data= 'SnorovkaSchool' ) start_keyboard.add(Hack_Pentagon, Snorovka_School) bot.send_message(message.chat.id, 'А вот и callback кнопки!' , reply_markup=start_keyboard)
Как получить message из callback? Чтобы получить message из callback достаточно написать: callback.message
Теперь мы можем использовать message так, как хотим. Например, после получения callback отправим сообщение:
bot.send_message(callback .message.chat.id , "Ты нажал на кнопку" ) #Если получаем callback ответ с клавиатуры запускаем функцию answer_callback @bot.callback_query_handler(func=lambda c:c.data) def answer_callback(callback) : if callback.data == 'SnorovkaSchool' : #Что-то делаем elif callback.data == 'HackPentagon' : #Взламываем Пентагон #Какой-то код...
Количество кнопок в строке можно задать с помощью row_width :
start_keyboard = types. InlineKeyboardMarkup (row_width = 1)
Вот так будут выглядеть кнопки при row_width = 1 :
А вот так при row_width = 2 :
row_width работает и с теми кнопками, которые мы только что прошли.
|
|
|