Я пытаюсь создать игру в судоку. Я хочу использовать JSwing API. Итак, я использую массив JLabels для отображения сетки. У меня есть изображение, нарисованное сеткой 3x3, и я хотел бы показать это в сетке 3x3. Моя проблема заключается в том, что изображение не будет отображаться. Может ли кто-нибудь помочь мне решить проблему?Array of JLabel ImageIcon
Мой текущий код выглядит следующим образом: он разделен на два класса.
Main.class
package com.brendenbunker;
import javax.swing.*;
import java.awt.*;
public class Main{
FileMaker fileMaker;
void init() {
fileMaker = new FileMaker();
}
public static void main(String args[]){
ScreenGenerator gui = new ScreenGenerator();
gui.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
double width = gui.gridPic.getIconWidth();
double height = gui.gridPic.getIconHeight();
int h = (int) height*4;
int w = (int) width*3;
gui.setSize(w,h);
gui.setTitle("Suduko");
gui.setVisible(true);
}
}
ScreenGenerator.class
package com.brendenbunker;
import javax.swing.*;
import java.awt.*;
public class ScreenGenerator extends JFrame{
//Intro Components
//JLabel temp;
JLabel[] gridLabel;
ImageIcon gridPic;
//intro Vars
public ScreenGenerator() {
setLayout(new FlowLayout());
gridPic = new ImageIcon(getClass().getResource("/Grid_Unified.png"));
gridLabel = new JLabel[8];
for (int i=0; i>=9; i++) {
gridLabel[i] = new JLabel("Hello");
}
for (int i=0; i>=9; i++) {
gridLabel[i].setIcon(gridPic);
add(gridLabel[i]);
}
}
}
Все помогли Appericiated
проверить свою петлю цикла ... он никогда не войдет в цикл. Нет необходимости проверять какой-либо другой пример. Это абсолютно работает. Просто вы должны изменить условие 'for (..; .. ; ..) 'loop ... – ELITE