如何比较jLabel的边框粗细?

时间:2019-10-10 14:17:39

标签: java swing arraylist netbeans

我有一个jLabel数组,其中包含DoubleLinkedList中包含的各种播放器的名称。 jLabel具有1px厚度的边框。当玩家转弯时,边框应更改为3px。如果边框为3px,我将无法成功进行比较,因此无法切换转弯。变量m是我需要返回具有3px边框的label的索引。我非常感谢您的帮助。

int m;

for (m = 0; m < jlNombresArray.size(); m++) {
    if(jlNombresArray.get(m).getBorder().equals(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(240, 240, 240), 3))) {
        break;
    }
}

1 个答案:

答案 0 :(得分:0)

在数据模型中保留选择状态。

int selectedPlayerIndex = -1;

void changePlayerView(int playerIndex) {
    if (selectedPlayerIndex != -1) {
        jlNombresArray.get(selectedPlayerIndex).setBorder(
            BorderFactory.createLineBorder(new Color(240, 240, 240), 1));
    }
    selectedPlayerIndex = playerIndex;
    if (selectedPlayerIndex != -1) {
        jlNombresArray.get(selectedPlayerIndex).setBorder(
            BorderFactory.createLineBorder(new Color(240, 240, 240), 3));
    }
    ... repaint ...
}