创造模式Tab页
一、Tab页注册
1、定义Tab页注册类
import cloude.abaaba.tutorial.TutorialMod;
import cloude.abaaba.tutorial.item.ModItems;
import net.minecraft.core.registries.Registries;
import net.minecraft.network.chat.Component;
import net.minecraft.world.item.CreativeModeTab;
import net.minecraft.world.item.ItemStack;
import net.neoforged.bus.api.IEventBus;
import net.neoforged.neoforge.registries.DeferredRegister;
import java.util.function.Supplier;
/**
* ModCreativeModeTabs Tab页注册
*
* @author Pig-Gua
* @date 2026-05-12
*/
public class ModCreativeModeTabs {
public static final DeferredRegister<CreativeModeTab> CREATIVE_MODE_TAB_REGISTRY = DeferredRegister.create(Registries.CREATIVE_MODE_TAB, TutorialMod.MODID);
public static void register(IEventBus eventBus) {
CREATIVE_MODE_TAB_REGISTRY.register(eventBus);
}
}2、在主类中进行全局注册
/**
* TutorialMod 主类
*
* @author Pig-Gua
* @date 2026-05-10
*/
@Mod(TutorialMod.MODID)
public class TutorialMod {
public TutorialMod(IEventBus modEventBus, ModContainer modContainer) {
//...
// 全局注册Tab页
ModCreativeModeTabs.register(modEventBus);
//...
}
}二、创建Tab页
Tab页属性
title: 名称 ( 使用翻译 )
icon: 图标
displayItems: Tab页内展示的内容
import cloude.abaaba.tutorial.TutorialMod;
import cloude.abaaba.tutorial.item.ModItems;
import net.minecraft.core.registries.Registries;
import net.minecraft.network.chat.Component;
import net.minecraft.world.item.CreativeModeTab;
import net.minecraft.world.item.ItemStack;
import net.neoforged.bus.api.IEventBus;
import net.neoforged.neoforge.registries.DeferredRegister;
import java.util.function.Supplier;
/**
* ModCreativeModeTabs Tab页注册
*
* @author Pig-Gua
* @date 2026-05-12
*/
public class ModCreativeModeTabs {
public static final DeferredRegister<CreativeModeTab> CREATIVE_MODE_TAB_REGISTRY = DeferredRegister.create(Registries.CREATIVE_MODE_TAB, TutorialMod.MODID);
// 自定义Tab页
public static final Supplier<CreativeModeTab> TUTORIAL_TAB = CREATIVE_MODE_TAB_REGISTRY.register("tutorial_tab",
() -> CreativeModeTab.builder()
.title(Component.translatable("item_group.tutorial_mod.tutorial_tab"))
.icon(() -> new ItemStack(ModItems.PIG_GUA.get()))
.displayItems((parameters, output) -> {
output.accept(ModItems.PIG_GUA);
}).build());
public static void register(IEventBus eventBus) {
CREATIVE_MODE_TAB_REGISTRY.register(eventBus);
}
}三、效果演示

评论区