Interface StringSelectMenuHandler
public interface StringSelectMenuHandler
-
Method Summary
Modifier and TypeMethodDescriptionvoidhandleStringSelectMenu(net.dv8tion.jda.api.events.interaction.component.StringSelectInteractionEvent event, List<String> values) Method that must be overridden for all classes that handleStringSelectInteraction.
-
Method Details
-
handleStringSelectMenu
void handleStringSelectMenu(@Nonnull net.dv8tion.jda.api.events.interaction.component.StringSelectInteractionEvent event, @Nonnull List<String> values) Method that must be overridden for all classes that handleStringSelectInteraction. All select menus that match the identifier will execute this class's implementation of thehandleStringSelectMenu(StringSelectInteractionEvent, List)method.public class TestCommand extends SlashCommand implements StringSelectMenuHandler { public TestCommand() { setSlashCommandData(Commands.slash("test", "test description")); } @Override public void execute(SlashCommandInteractionEvent event) { List<Role> roles = [...] SelectMenu.Builder menu = SelectMenu.create("test-select-menu"); for (Role role : roles) { menu.addOption(role.getName(), role.getId()); } event.reply("Choose your rank!").addActionRow(menu.build()).queue(); } @Override public void handleStringSelectMenu(StringSelectInteractionEvent event, List<String> values) { for (String roleId : values) { event.getGuild().addRoleToMember(event.getMember(), event.getGuild().getRoleById(roleId)).queue(); } event.reply("Successfully added " + String.join(", ", event.getValues())).queue(); } }- Since:
- v1.4
- See Also:
-