Evo mojih asocijacija napisanih u Javi. možda pomogne. Jedini problem je što ne znam kako u konkretnom kodu da napravim otvaranje svih polja jedne kolone ukoliko je rešenje kolone tačno. Ako neko ima ideju kako da odradim to, bilo bi super da napiše bar ideju.
Hvala :)
Code:
import java.awt.*;
import javax.swing.*;
import sun.net.www.content.image.jpeg;
import java.awt.event.*;
public class GUI extends JFrame {
private JMenuBar meniBar;
private JMenu meni;
private JMenuItem novaIgra;
private JMenuItem izlaz;
private String[] vrednostA = new String[]{"rame","saka","narukvica","prst"};
private String[] vrednostB = new String[]{"ptica", "avion", "raspon","orao"};
private String[] vrednostC = new String[]{" precka", "mreza", "stativa","pogodak"};
private String[] vrednostD = new String[]{" kosarka", "odbojka", "oprema","zimski"};
final JTextField resenjeKoloneA= new JTextField();
final JTextField resenjeKoloneB= new JTextField();
final JTextField resenjeKoloneC= new JTextField();
final JTextField resenjeKoloneD= new JTextField();
private String resenjeC="gol";
private String resenjeD="sport";
private String resenjeA="ruka";
private String resenjeB="krilo";
private String konres="rukomet";
//Dugme d;
public GUI(){
setLayout(new FlowLayout());
setTitle("Asocijacije");
setSize(300,600);
setLocationRelativeTo(null);
meniBar= new JMenuBar();
meni= new JMenu("O igri");
novaIgra= new JMenuItem("Nova Igra");
setResizable(false);
novaIgra.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
GUI g= new GUI();
g.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
g.setVisible(true);
dispose();
}
});
novaIgra.setMnemonic('n');
izlaz= new JMenuItem("Izlaz");
meni.add(novaIgra);
meni.add(izlaz);
izlaz.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
dispose();
}
});
izlaz.setMnemonic('I');
meni.setMnemonic('O');
meniBar.add(meni);
setJMenuBar(meniBar);
JPanel abPanel=new JPanel(new GridLayout(5,2));
for(int i=0;i<4;i++){
Dugme d=new Dugme("A"+(i+1),vrednostA[0+i]);
JPanel aPanel= new JPanel(new FlowLayout(FlowLayout.CENTER));
JPanel bPanel= new JPanel(new FlowLayout(FlowLayout.CENTER));
aPanel.add(d);
abPanel.add(aPanel);
Dugme d1= new Dugme("B"+(i+1),vrednostB[0+i]);
bPanel.add(d1);
abPanel.add(bPanel);
}
JPanel panel1= new JPanel(new FlowLayout(FlowLayout.CENTER));
resenjeKoloneA.setPreferredSize(new Dimension(Dugme.SIRINA,Dugme.VISINA));
resenjeKoloneA.setHorizontalAlignment(JTextField.CENTER);
resenjeKoloneA.addKeyListener(new KeyListener() {
@Override
public void keyTyped(KeyEvent e) {
// TODO Auto-generated method stub
}
@Override
public void keyReleased(KeyEvent e) {
// TODO Auto-generated method stub
}
@Override
public void keyPressed(KeyEvent e) {
if(e.getKeyCode()==KeyEvent.VK_ENTER){
if(resenjeKoloneA.getText().equals(resenjeA)){
JOptionPane.showMessageDialog(null, "Tacan odgovor!");
resenjeKoloneA.setEditable(false);
}
else
JOptionPane.showMessageDialog(null, "Netacan odgovor!");
}
}
});
panel1.add(resenjeKoloneA);
abPanel.add(panel1);
JPanel panel2= new JPanel(new FlowLayout(FlowLayout.CENTER));
resenjeKoloneB.setPreferredSize(new Dimension(Dugme.SIRINA,Dugme.VISINA));
resenjeKoloneB.setHorizontalAlignment(JTextField.CENTER);
resenjeKoloneB.addKeyListener(new KeyListener() {
@Override
public void keyTyped(KeyEvent e) {
// TODO Auto-generated method stub
}
@Override
public void keyReleased(KeyEvent e) {
// TODO Auto-generated method stub
}
@Override
public void keyPressed(KeyEvent e) {
if(e.getKeyCode()==KeyEvent.VK_ENTER){
if(resenjeKoloneB.getText().equals(resenjeB)){
JOptionPane.showMessageDialog(null, "Tacan odgovor!");
resenjeKoloneB.setEditable(false);
}
else
JOptionPane.showMessageDialog(null, "Netacan odgovor!");
}
}
});
panel2.add(resenjeKoloneB);
abPanel.add(panel2);
add(abPanel,BorderLayout.NORTH);
/*Donji deo
* CD Panel*/
JPanel konacni= new JPanel(new FlowLayout(FlowLayout.CENTER));
final JTextField konacnoResenje= new JTextField();
konacnoResenje.setPreferredSize(new Dimension(Dugme.SIRINA*2,Dugme.VISINA));
konacnoResenje.setHorizontalAlignment(JTextField.CENTER);
konacnoResenje.addKeyListener(new KeyListener() {
@Override
public void keyTyped(KeyEvent e) {
// TODO Auto-generated method stub
}
@Override
public void keyReleased(KeyEvent e) {
// TODO Auto-generated method stub
}
@Override
public void keyPressed(KeyEvent e) {
if(e.getKeyCode()==KeyEvent.VK_ENTER){
if(konacnoResenje.getText().equals(konres)){
JOptionPane.showMessageDialog(null, "Uspešno ste rešili asocijaciju");
konacnoResenje.setEditable(false);
}
else
JOptionPane.showMessageDialog(null, "Pokušajte ponovo");
}
}
});
konacni.add(konacnoResenje);
add(konacni);
JPanel cdPanel= new JPanel(new GridLayout(5,2));
JPanel panel3= new JPanel(new FlowLayout(FlowLayout.CENTER));
resenjeKoloneC.setPreferredSize(new Dimension(Dugme.SIRINA,Dugme.VISINA));
resenjeKoloneC.setHorizontalAlignment(JTextField.CENTER);
resenjeKoloneC.addKeyListener(new KeyListener() {
@Override
public void keyPressed(KeyEvent e) {
if(e.getKeyCode()==KeyEvent.VK_ENTER){
if(resenjeKoloneC.getText().equals(resenjeC)){
JOptionPane.showMessageDialog(null, "Tacan odgovor");
resenjeKoloneC.setEditable(false);
}
else
JOptionPane.showMessageDialog(null, "Netacan odgovor");
}
}
@Override
public void keyTyped(KeyEvent e) {
// TODO Auto-generated method stub
}
@Override
public void keyReleased(KeyEvent e) {
// TODO Auto-generated method stub
}
});
panel3.add(resenjeKoloneC);
cdPanel.add(panel3);
JPanel panel4= new JPanel(new FlowLayout(FlowLayout.CENTER));
resenjeKoloneD.setPreferredSize(new Dimension(Dugme.SIRINA,Dugme.VISINA));
resenjeKoloneD.setHorizontalAlignment(JTextField.CENTER);
resenjeKoloneD.addKeyListener(new KeyListener() {
@Override
public void keyTyped(KeyEvent e) {
// TODO Auto-generated method stub
}
@Override
public void keyReleased(KeyEvent e) {
// TODO Auto-generated method stub
}
@Override
public void keyPressed(KeyEvent e) {
if(e.getKeyCode()==KeyEvent.VK_ENTER){
if(resenjeKoloneD.getText().equals(resenjeD)){
JOptionPane.showMessageDialog(null, "Tacan odgovor!");
resenjeKoloneD.setEditable(false);
}
}
}
});
panel4.add(resenjeKoloneD);
cdPanel.add(panel4);
for(int i=0;i<4;i++){
JPanel cpanel= new JPanel(new FlowLayout(FlowLayout.CENTER));
Dugme d= new Dugme("C"+(i+1),vrednostC[i]);
cpanel.add(d);
cdPanel.add(cpanel);
JPanel dpanel= new JPanel(new FlowLayout(FlowLayout.CENTER));
Dugme d1= new Dugme("D"+(i+1),vrednostD[i]);
dpanel.add(d1);
cdPanel.add(dpanel);
}
add(cdPanel,BorderLayout.SOUTH);
}
}
import java.awt.Dimension;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
public class Dugme extends JButton {
public static final int SIRINA=115;
public static final int VISINA=35;
private String ime;
private String vrednost;
public Dugme(String ime, final String vrednost){
setText(ime);
setPreferredSize(new Dimension(SIRINA,VISINA));
addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
setText(vrednost);
setEnabled(false);
}
});
}
public void otvoriDugnme(String ime,String vrednost){
setText("vrednost");
setEnabled(false);
}
public void otvoriDugme(){
setText(vrednost);
setEnabled(false);
}
}
import javax.swing.JFrame;
public class Glavna {
public static void main(String[] args) {
// TODO Auto-generated method stub
GUI gui= new GUI();
gui.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
gui.setVisible(true);
}
}