在 discord.py 嵌入中向下滚动

Posted

技术标签:

【中文标题】在 discord.py 嵌入中向下滚动【英文标题】:Scrolling down in a discord.py embed 【发布时间】:2021-04-17 11:52:21 【问题描述】:

This is my embed rn

它使用 google API 来获取日历上即将发生的事件,但我必须限制它获取的事件数量,因为消息太长了。日历列表存储在嵌入的描述中。有没有办法将嵌入限制在一定的大小,并能够在描述中向下滚动以便显示所有事件?

【问题讨论】:

嵌入没有滚动条功能,但我想您可以使用表情符号来创建多个嵌入页面。你可以查看this的答案。 【参考方案1】:

正如 Zimano 所说,您不能在嵌入中包含可滚动元素,但您可以做的是多页嵌入,最简单的方法是使用 ext.menus(要安装它: python -m pip install -U git+https://github.com/Rapptz/discord-ext-menus)

import discord
from discord.ext import menus

class MultiPageEmbed(menus.ListPageSource):
    async def format_page(self, menu, entry):
        return entry


@bot.command()
async def whatever(ctx):
    # Put all your embeds here
    embeds = [discord.Embed(title="Embed 1"), discord.Embed(title="Embed 2"), discord.Embed(title="Embed 3")]

    menu = menus.MenuPages(MultiPageEmbed(embeds, per_page=1))
    await menu.start(ctx)

不幸的是,它仍处于测试阶段,因此没有关于它的文档。

【讨论】:

这是我当前的代码,我将如何调整? client.event async def on_message(message): if message.author == client.user: return if msg.startswith('$events'): events = event() poggers=discord.Embed(title="Events", url="https://calendar.google.com/calendar/u/3?cid=Y180OXZpYmEycWpjZzE5dHIydmYyM21hOWJpNEBncm91cC5jYWxlbmRhci5nb29nbGUuY29t", description=events, color=0x00ffff) poggers.set_footer(text="Events Calendar") await message.channel.send(embed=poggers) 对不起,如果我看起来很困惑,我似乎无法在 cmets 中找出正确的格式 但我想你可以弄清楚如何让它工作,祝你好运!【参考方案2】:

不,您不能在嵌入中添加可滚动元素。

【讨论】:

以上是关于在 discord.py 嵌入中向下滚动的主要内容,如果未能解决你的问题,请参考以下文章

在嵌入中附加文件 (Discord.py)

如何在 discord.py 中嵌入如下图所示的按钮? [关闭]

嵌入中的 Discord.py 和表情符号

如何在 discord.py 中复制嵌入?

无法在嵌入消息的标题 discord.py 中标记成员

如何在嵌入 discord.py 中使用 markdown 语法发送图像