无法发送不和谐按钮
Cant send discord button
我没有收到任何错误消息。使用最新版本的 discord.py v2.
@client.command(aliases = ["Rock Paper Scissors", "RPS", "Rockpaperscissors", "rockpaperscissors"])
async def check(ctx):
buttonchoosebot = discord.ui.Button(style = discord.ButtonStyle.primary, label="Play bot")
buttonchoosemember = discord.ui.Button(style = discord.ButtonStyle.primary, label="Play member")
await ctx.send("Would you like to play against a bot or a member?", components=[[buttonchoosebot, buttonchoosemember]])
编辑:
我切换到 nextcord 使事情变得更容易。
from nextcord.ext import commands
import nextcord
只需将所有“discord”命令替换为“nextcord”命令即可。使用 nextcord 的新命令如下所示:
@client.command()
async def check(ctx):
buttonchoosebot = nextcord.ui.Button(style = nextcord.ButtonStyle.primary, label="Play bot")
buttonchoosemember = nextcord.ui.Button(style = nextcord.ButtonStyle.primary, label="Play member")
buttons_view = nextcord.ui.View()
buttons_view.add_item(buttonchoosebot)
buttons_view.add_item(buttonchoosemember)
await ctx.send("Test", view=buttons_view)
感谢大家的回答!
在 discord.py
中您需要定义一个视图以使用 UI 组件。
这用于消息命令:
@client.command()
async def check(ctx):
buttonchoosebot = discord.ui.Button(style = discord.ButtonStyle.primary, label="Play bot")
buttonchoosemember = discord.ui.Button(style = discord.ButtonStyle.primary, label="Play member")
buttons_view = discord.ui.View()
buttons_view.add_item(buttonchoosebot)
buttons_view.add_item(buttonchoosemember)
await ctx.send("Test", view=buttons_view)
这用于斜杠命令:
@client.tree.command(name='check', guild = discord.Object(id=658947832392187906))
async def help(interaction: discord.Interaction):
buttonchoosebot = discord.ui.Button(style = discord.ButtonStyle.primary, label="Play bot")
buttonchoosemember = discord.ui.Button(style = discord.ButtonStyle.primary, label="Play member")
buttons_view = discord.ui.View()
buttons_view.add_item(buttonchoosebot)
buttons_view.add_item(buttonchoosemember)
await interaction.response.send_message("Test", view=buttons_view)
我没有收到任何错误消息。使用最新版本的 discord.py v2.
@client.command(aliases = ["Rock Paper Scissors", "RPS", "Rockpaperscissors", "rockpaperscissors"])
async def check(ctx):
buttonchoosebot = discord.ui.Button(style = discord.ButtonStyle.primary, label="Play bot")
buttonchoosemember = discord.ui.Button(style = discord.ButtonStyle.primary, label="Play member")
await ctx.send("Would you like to play against a bot or a member?", components=[[buttonchoosebot, buttonchoosemember]])
编辑: 我切换到 nextcord 使事情变得更容易。
from nextcord.ext import commands
import nextcord
只需将所有“discord”命令替换为“nextcord”命令即可。使用 nextcord 的新命令如下所示:
@client.command()
async def check(ctx):
buttonchoosebot = nextcord.ui.Button(style = nextcord.ButtonStyle.primary, label="Play bot")
buttonchoosemember = nextcord.ui.Button(style = nextcord.ButtonStyle.primary, label="Play member")
buttons_view = nextcord.ui.View()
buttons_view.add_item(buttonchoosebot)
buttons_view.add_item(buttonchoosemember)
await ctx.send("Test", view=buttons_view)
感谢大家的回答!
在 discord.py
中您需要定义一个视图以使用 UI 组件。
这用于消息命令:
@client.command()
async def check(ctx):
buttonchoosebot = discord.ui.Button(style = discord.ButtonStyle.primary, label="Play bot")
buttonchoosemember = discord.ui.Button(style = discord.ButtonStyle.primary, label="Play member")
buttons_view = discord.ui.View()
buttons_view.add_item(buttonchoosebot)
buttons_view.add_item(buttonchoosemember)
await ctx.send("Test", view=buttons_view)
这用于斜杠命令:
@client.tree.command(name='check', guild = discord.Object(id=658947832392187906))
async def help(interaction: discord.Interaction):
buttonchoosebot = discord.ui.Button(style = discord.ButtonStyle.primary, label="Play bot")
buttonchoosemember = discord.ui.Button(style = discord.ButtonStyle.primary, label="Play member")
buttons_view = discord.ui.View()
buttons_view.add_item(buttonchoosebot)
buttons_view.add_item(buttonchoosemember)
await interaction.response.send_message("Test", view=buttons_view)