如何在 JDA 中编辑嵌入
Posted
技术标签:
【中文标题】如何在 JDA 中编辑嵌入【英文标题】:How to edit an Embed in JDA 【发布时间】:2020-09-27 08:28:29 【问题描述】:所以我想知道如果我使用我的 Bot 发送嵌入内容,之后我可以使用 Bot 编辑它吗? 如果可以的话,请告诉我怎么做。
这是我到目前为止的代码,但不知道之后如何编辑该 EmbedBuilder:
public class Giveaway extends ListenerAdapter
@Override
public void onMessageReceived(MessageReceivedEvent event)
if (event.getMessage().getContentDisplay().startsWith("+giveaway"))
if (event.getMessage().getContentDisplay().substring(10, 11) != null)
long msgid = event.getMessageIdLong();
String count = event.getMessage().getContentDisplay().substring(10, 11);
EmbedBuilder eb = new EmbedBuilder();
eb.setTitle("It's GIVEAWAY-TIME!");
eb.setDescription("Prize: " + "\n Winners: " + count);
eb.setColor(Color.BLUE);
event.getTextChannel().sendMessage(eb.build()).queue();
所以要明确一点,我想做的是事后在邮件中添加一个页脚,并在某些情况下更改描述。
我已经尝试了一些方法,但我还没有提出解决方案。
如果你能回答会很好。
亲切的问候, lxxrxtz
【问题讨论】:
【参考方案1】:您可以保留嵌入构建器并创建一个新的嵌入:
eb.setFooter(...);
MessageEmbed embed = eb.build();
那么您所要做的就是致电message.editMessage(embed).queue()
并提供您要编辑的消息。您可以通过sendMessage
中的回调访问消息:
channel.sendMessage(embed).queue(message ->
eb.setFooter(...);
message.editMessage(eb.build()).queue();
);
【讨论】:
以上是关于如何在 JDA 中编辑嵌入的主要内容,如果未能解决你的问题,请参考以下文章
编辑带有图像附件的嵌入消息在聊天中加倍 - Discord JDA