如何比较 jLabel 的边框粗细?
How to compare the border thickness of a jLabel?
我有一个 jLabel 数组,其中包含包含在 DoubleLinkedList 中的各种玩家的名字。 jLabel 的边框厚度为 1px。当轮到玩家时,边框应该变为 3px。如果边框是 3px,我无法成功比较,因此我无法切换回合。变量 m 是我需要 return 带有 3px 边框的标签索引。我真的很感激你的帮助。
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;
}
}
在您的数据模型中保持选择状态。
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 ...
}
我有一个 jLabel 数组,其中包含包含在 DoubleLinkedList 中的各种玩家的名字。 jLabel 的边框厚度为 1px。当轮到玩家时,边框应该变为 3px。如果边框是 3px,我无法成功比较,因此我无法切换回合。变量 m 是我需要 return 带有 3px 边框的标签索引。我真的很感激你的帮助。
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;
}
}
在您的数据模型中保持选择状态。
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 ...
}