default_select_value

# Setting Default Values on Select Menus.

This tutorial will cover how to set the default value for a select menu (that isn't a text select menu)!

This only works for the following types of select menus: user, role, mentionable, and channel. The default type of a select menu (as shown in this page) does not work for this, as that supports a "placeholder".

    #include<dpp/dpp.h>
    #include<dpp/unicode_emoji.h>

    intmain(){
    dpp::clusterbot("token");

    bot.on_log(dpp::utility::cout_logger());

    /*Theeventisfiredwhensomeoneissuesyourcommands*/
    bot.on_slashcommand([&bot](constdpp::slashcommand_t&event){
    /*Checkwhichcommandtheyran*/
    if(event.command.get_command_name()=="select"){
    /*Createamessage*/
    dpp::messagemsg(event.command.channel_id,"Thistexthasaselectmenu!");

    /*Addanactionrow,andaselectmenuwithintheactionrow.
    *
    *Yourdefaultvaluesarelimitedtomax_values,
    *meaningyoucan'taddmoredefaultvaluesthantheallowedmaxvalues.
    */
    msg.add_component(
    dpp::component().add_component(
    dpp::component()
    .set_type(dpp::cot_role_selectmenu)
    .set_min_values(2)
    .set_max_values(2)
    .add_default_value(dpp::snowflake{667756886443163648},dpp::cdt_role)
    .set_id("myselectid")
    )
    );

    /*Replytotheuserwithourmessage.*/
    event.reply(msg);
    }
    });

    bot.on_ready([&bot](constdpp::ready_t&event){
    if(dpp::run_once<struct register_bot_commands>()){
    /*Createandregisteracommandwhenthebotisready*/
    bot.global_command_create(dpp::slashcommand("select","Selectsomethingatrandom!",bot.me.id));
    }
    });

    bot.start(dpp::st_wait);

    return0;
    }

If all went well, you should have something like this!