【问题标题】:How to edit an Embed in JDA如何在 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

【问题讨论】:

    标签: java bots discord embed


    【解决方案1】:

    您可以保留嵌入构建器并创建一个新的嵌入:

    eb.setFooter(...);
    MessageEmbed embed = eb.build();
    

    那么您所要做的就是致电message.editMessage(embed).queue() 并提供您要编辑的消息。您可以通过sendMessage 中的回调访问消息:

    channel.sendMessage(embed).queue(message -> {
      eb.setFooter(...);
      message.editMessage(eb.build()).queue();
    });
    

    【讨论】:

      猜你喜欢
      • 2022-01-16
      • 2021-03-17
      • 1970-01-01
      • 2019-02-07
      • 2021-08-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-11-02
      相关资源
      最近更新 更多