📄 intarrayanimationview.java
字号:
package graphicAnimation.intContainerAnimationView;
import java.awt.Color;
import java.awt.Point;
import graphicAnimation.AnimationView;
import graphicAnimation.intAnimationView.IntAnimationView;
public abstract class IntArrayAnimationView extends AnimationView {
protected IntAnimationView[] elements = null; // 展示的数组元素
public IntArrayAnimationView() { }
public IntArrayAnimationView(Point pos, Color color) {
super(pos, color);
}
/**
* 返回某个元素的整数视图
* @param index 元素的下标
*/
public IntAnimationView getElementAnimationView(int index) { return elements[index]; }
/**
* 返回数组元素的个数
* @return 如果已经创建数组元素模型则返回相应元素个数,否则返回 0
*/
public int getArrayLength() {
if (elements == null) return 0;
else return elements.length;
}
/**
* 重新设置所有数组元素的值
* @param data 新的元素值所在的数组
*/
public void setElementValue(int[] data) {
for (int index = 0; index < data.length; index++) {
elements[index].setValue(data[index]);
}
}
/**
* 重新设置某个数组元素的值
* @param index 该数组元素的下标
* @param value 该数组元素的新的值
*/
public void setElementValue(int index, int value) {
elements[index].setValue(value);
}
/**
* 返回某个数组元素的值
* @param index 该数组元素的下标
* @return 该数组元素的值
*/
public int getElementValue(int index) {
return elements[index].getValue();
}
/**
* 设置展示某个数组元素的颜色值,这个方法可使得某些数组元素用一些特别的颜色展示
* @param index 该数组元素的下标
* @param nColor 新的颜色
*/
public void setElementColor(int index, Color color) {
elements[index].setColor(color);
}
/**
* 返回展示某个数组元素的颜色值
* @param index 该数组元素的下标
*/
public Color getElementColor(int index) {
return elements[index].getColor();
}
/**
* 设置展示整个数组元素的基本颜色值
* @param color 颜色值
*/
public void setArrayColor(Color color) {
setColor(color);
for (int i = 0; i < elements.length; i++) elements[i].setColor(color);
}
/**
* 移动数组某个元素到新的位置
* @param index 该元素的下标
* @param newPos 新的位置
*/
public void moveElementTo(int index, Point newPos) {
elements[index].moveTo(newPos);
}
/**
* 设置演示数组元素的起始位置,所有元素矩形框的位置根据该起始位置计算。注意对于纵坐标(y值)
* 而言,所有元素矩形框均画在该起始值的上方(而不是下方)
* @param position 起始位置
*/
public void setStartPosition(Point position) { this.position = new Point(position); }
/**
* 设置演示数组元素的起始位置,所有元素矩形框的位置根据该起始位置计算。注意对于纵坐标(y值)
* 而言,所有元素矩形框均画在该起始值的上方(而不是下方)
* @param x, y 起始位置
*/
public void setStartPosition(int x, int y) { this.position = new Point(x, y); }
/**
* 返回起始位置
* @return 起始位置
*/
public Point getStartPosition() { return position; }
/**
* 返回某个数组元素的位置
* @param index 该元素的下标
* @return 位置值
*/
public Point getElementPosition(int index) { return elements[index].getPosition(); }
/**
* 隐藏某个数组元素的视图
* @param index 该元素的下标
*/
public void hideElement(int index) {
elements[index].hide();
}
/**
* 使某个数组元素的视图可见
* @param index 该元素的下标
*/
public void showElement(int index) {
elements[index].show();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -