Как создать выпадающее меню, в котором будут все участники Discord-сервера

Рейтинг: 0Ответов: 1Опубликовано: 19.07.2023

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

        options = []

    select = disnake.ui.StringSelect(
        custom_id='helpmenu',
        placeholder='Выберите ивент',
        options=options
    )

Что можно сделать? Видел, что эта реализация возможна, но сам повторить не могу

Ответы

▲ 0Принят

Используйте disnake.ui.UserSelect

Ссылка на доки: https://docs.disnake.dev/en/stable/api/ui.html#disnake.ui.UserSelect

Пример кода:

class selectUser(discord.ui.UserSelect):
  def __init__(self):
    super().__init__(
      placeholder="Выберите пользователя...",
      min_values=1,
      max_values=1,
      custom_id = 'select_user_dropdown'
    )

@client.listen("on_dropdown")
async def dropdownListen(inter):
  if inter.component.custom_id == "select_user_dropdown":
    print(inter.values[0]) # айди выбранного пользователя
    # действия после выбора