Hey mensen,
Ik zit met een probleem, ik moet voor school een groot porject maken in Java. Het is de bedoeling om een soort risk te bouwen. Het speelbord moet opgebouwd zijn uit hexen(zeskanten). Ik heb alleen gbeen flauwidee hoe ik die op moet zetten.
Ik het nu zo geprobeerd, een klasse Hex daarin teken ik elke keer een hex dmv drawline als ik die aanroep. en een hoofdframe waar ik een array maak van panels met zo'n nieuwe hex erop. ik krijg nu alleen de hexen niet tegen elkaar aan. Ik heb al zitten kutten met die layout managers enzo.
Hier is de classe DaHex
Please help me
Ik zit met een probleem, ik moet voor school een groot porject maken in Java. Het is de bedoeling om een soort risk te bouwen. Het speelbord moet opgebouwd zijn uit hexen(zeskanten). Ik heb alleen gbeen flauwidee hoe ik die op moet zetten.
Ik het nu zo geprobeerd, een klasse Hex daarin teken ik elke keer een hex dmv drawline als ik die aanroep. en een hoofdframe waar ik een array maak van panels met zo'n nieuwe hex erop. ik krijg nu alleen de hexen niet tegen elkaar aan. Ik heb al zitten kutten met die layout managers enzo.
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
| import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class Spelbord extends JFrame{
private String sSenario;
private JPanel panel[] = new DaHex[100];
/**
* Default Constructor
*/
public Spelbord() {
addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
Container container = getContentPane();
GridLayout gridbag = new GridLayout(5,5);
container.setLayout(gridbag);
for (int iTeller=0; iTeller<30; iTeller++)
{
panel[iTeller] = new DaHex(50);
panel[0].setBackground(Color.black);
container.add(panel[iTeller]);
}
setSize(1150,832);
container.setVisible(true);
}
public Spelbord(String Senario) {
sSenario = Senario;
if (sSenario.equals("QuatreBras")) {
//laad quatre bras
}
}
public static void main (String[] args){
Spelbord bord = new Spelbord();
bord.setTitle("Quatre Bras");
bord.setVisible(true);
}
} |
Hier is de classe DaHex
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
| import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class DaHex extends JPanel implements ActionListener {
private int ixA;
public DaHex() {
}
public DaHex(int i) {
ixA = i;
}
public void paintComponent(Graphics g){
super.paintComponents(g);
g.setColor(Color.black);
g.drawLine(ixA,ixA,ixA + 60,ixA); // A-B
g.drawLine(ixA + 60,ixA,ixA + 86,ixA + 52); // B-C
g.drawLine(ixA + 86,ixA + 52,ixA+60,ixA + 104); // C-D
g.drawLine(ixA + 60,ixA + 104 ,ixA,ixA + 104); // D-E
g.drawLine(ixA,ixA + 104,ixA - 26,ixA + 52); // E-F
g.drawLine(ixA - 26,ixA + 52,ixA,ixA); // F-A
}
public void actionPerformed(ActionEvent event){
repaint();
}
public void setixA(int x) {
ixA = x;
}
} |
Please help me
