[]
默认情况下,如果一个属性的类型是 int 那么这个属性会被自动识别为整数属性,不需要做任何额外的事情
@Data
@Icon("resources/Icon.png")
public class MyPluginServerCommand extends Command implements ICommandExecutableInServerSide {
private int inValue;
@Override
public ExecuteResult execute(IServerCommandExecuteContext dataContext) {
return new ExecuteResult();
}
@Override
public String toString() {
return "我的服务端命令插件";
}
}
在设计器中效果如下:
如果需要更细致的控制,需要使用 IntProperty 注解来控制。
注意,标注 @IntProperty 的字段类型必须是 int 或者 Integer
1.控制最大值最小值
设置 @IntProperty 的 min 和 max
代码
@Data
@Icon("resources/Icon.png")
public class MyPluginServerCommand extends Command implements ICommandExecutableInServerSide {
@IntProperty(min = 5, max = 10)
private int inValue;
@Override
public ExecuteResult execute(IServerCommandExecuteContext dataContext) {
return new ExecuteResult();
}
@Override
public String toString() {
return "我的服务端命令插件";
}
}
效果
在设计器中 inValue 只能输入 5 到 10 之间的整数
其他说明
如果不标注 @IntProperty ,默认整数属性的最小值是 0,最大值是 999。
如果标注了 @IntProperty ,但是没有设置最大值最小值,则最小值是 -2147483648, 最大值是 2147483647
2.控制属性值可空
设置 @IntProperty 的 allowNull , watermark 可选
代码
@Data
@Icon("resources/Icon.png")
public class MyPluginServerCommand extends Command implements ICommandExecutableInServerSide {
@IntProperty(allowNull = true, watermark = "无限制")
private Integer inValue;
@Override
public ExecuteResult execute(IServerCommandExecuteContext dataContext) {
return new ExecuteResult();
}
@Override
public String toString() {
return "我的服务端命令插件";
}
}
效果
注意
字段的类型需要声明为 Integer 而不是 int