Erotisi Newbie :)

Συζητήσεις για την Java

Συντονιστές: WebDev Moderators, Super-Moderators

Απάντηση
nonfactor
Δημοσιεύσεις: 7
Εγγραφή: 23 Απρ 2009 10:36

Erotisi Newbie :)

Δημοσίευση από nonfactor » 23 Απρ 2009 10:49

Katarxas kalimera,
eimai freskos sthn perioxi kai sthn Java genikotera.Apo periergia eipa na arxiso ligo me Java na do ti paizei.
Sto thema mas....antimetopizo mia mikrh dyskolia me mia efarmogi "Dice".
Pio sygkekrimena :
A. otan patao "Roll" thelo na vgei ena parathyro pou tha parista me thn morfi button (mi energo) ta 2 zaria (*.gif).Exo dokimasei ton official tropo me thn methodo ImageIcon alla mallon kano kati lathos.

B.Giati meta to Roll ta dyo koumpia pou emfanizontai einai toso mikra?

C.Skeftomai ekei pou kalei thn Random na valo merikes "if" analoga me to noumero pou tha erthei na kalei to antistoixo icon *.gif (diladi to antistoixo zari).

---------------------------------------------------------------------------------------------

import javax.swing.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.Random;
import java.awt.Color;

public class Window extends JFrame implements ActionListener {

JButton roll = new JButton("Roll");
JButton abort = new JButton("Abort");

public Window ()
{

super("Zaria");
JPanel pane = new JPanel();
setSize(300,100);
setLocation(450,300);

JLabel kimeno = new JLabel("Parakalo rixte ta zaria. ");
pane.add(kimeno);

pane.setBackground(Color.CYAN);
pane.add(roll);
pane.add(abort);

roll.addActionListener(this);
abort.addActionListener(this);

setContentPane(pane);

}

public void actionPerformed(ActionEvent event)
{

JPanel pane = new JPanel();
pane.setBackground(Color.CYAN);
Random random = new Random();

ImageIcon icon = new ImageIcon("dice1.GIF");
JButton a = new JButton(icon);
JButton b = new JButton(icon);

pane.add(a);
pane.add(b);
setContentPane(pane);
show();

if (event.getActionCommand().equals("Roll"))
{

int num1 = random.nextInt(6)+1;
int num2 = random.nextInt(6)+1;


// System.out.println("Apotelesma : "+num1+" "+num2);
}
if (event.getActionCommand().equals("Abort")) // Synergazetai me thn : abort.addActionListener(this);
{
System.exit(0);
}
}


public static void main(String[] args) {

Window win = new Window();
win.show();
}

}

----------------------------------------------------------------------------------------------------

Άβαταρ μέλους
virxen75
Δημοσιεύσεις: 493
Εγγραφή: 18 Φεβ 2009 00:17
Τοποθεσία: ΗΡΑΚΛΕΙΟ ΚΡΗΤΗΣ

Erotisi Newbie :)

Δημοσίευση από virxen75 » 23 Απρ 2009 13:01

Κώδικας: Επιλογή όλων

import javax.swing.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.Random;
import java.awt.Color;
import java.awt.Dimension;
public class Window extends JFrame implements ActionListener {

JButton roll = new JButton("Roll");
JButton abort = new JButton("Abort");


public Window (){
super("Zaria");
JPanel pane = new JPanel();
setSize(300,150);
setLocation(450,300);
setDefaultCloseOperation(EXIT_ON_CLOSE);
JLabel kimeno = new JLabel("Parakalo rixte ta zaria. ");
pane.add(kimeno);

pane.setBackground(Color.CYAN);
pane.add(roll);
pane.add(abort);

roll.addActionListener(this);
abort.addActionListener(this);
roll.setPreferredSize(new Dimension(70,20));
abort.setPreferredSize(new Dimension(70,20));
setContentPane(pane);

}

public void actionPerformed(ActionEvent event){
JPanel pane = new JPanel();
pane.setBackground(Color.CYAN);
Random random = new Random();
int numberDiceA= random.nextInt(6)+1;
int numberDiceB= random.nextInt(6)+1;

ImageIcon iconA = new ImageIcon("dice"+numberDiceA+".GIF");
ImageIcon iconB = new ImageIcon("dice"+numberDiceB+".GIF");
JButton a = new JButton(iconA);
JButton b = new JButton(iconB);
a.setPreferredSize(new Dimension(70,70));
b.setPreferredSize(new Dimension(70,70));
pane.add(a);
pane.add(b);
setContentPane(pane);
show();

if (event.getActionCommand().equals("Roll")){
System.out.println("Apotelesma : "+numberDiceA+" "+numberDiceB);
}
if (event.getActionCommand().equals("Abort")) // Synergazetai me thn : abort.addActionListener(this);
{
System.exit(0);
}
}


public static void main(String[] args) {

Window win = new Window();
win.show();
}

}
ΑΛΛΑΓΕΣ ΣΕ ΣΧΕΣΗ ΜΕ ΤΟ ΑΡΧΙΚΟ
=========================
0)setDefaultCloseOperation(EXIT_ON_CLOSE);

1) import java.awt.Dimension;

2)roll.setPreferredSize(new Dimension(70,20));
abort.setPreferredSize(new Dimension(70,20));

3)int numberDiceA= random.nextInt(6)+1;
int numberDiceB= random.nextInt(6)+1;
ImageIcon iconA = new ImageIcon("dice"+numberDiceA+".GIF");
ImageIcon iconB = new ImageIcon("dice"+numberDiceB+".GIF");
JButton a = new JButton(iconA);
JButton b = new JButton(iconB);
a.setPreferredSize(new Dimension(70,70));
b.setPreferredSize(new Dimension(70,70));
a.setEnabled(false);
b.setEnabled(false);

4)System.out.println("Apotelesma : "+numberDiceA+" "+numberDiceB);

ΑΙΤΙΟΛΟΓΗΣΗ ΑΛΛΑΓΩΝ
===================
0)για να κλείνει-τερματίζει η εφαρμογή όταν πατάμε το χ του JFRAME
1) έγινε επειδή το χρειάζομαι στην μέθοδο setPreferredSize(Dimension)
2) έγινε για να δώσω το επιθυμητό μέγεθος στα κουμπιά roll,abort
3) βάζω σε 2 μεταβλητές το αποτέλεσμα των ζαριών γιατί πρέπει να μπορούν τα ζάρια
να είναι και διαφορετικά
θεωρώ ότι έχω αρχεία gif τα dice1.gif/dice2.gif/dice3.gif/dice4.gif/dice5.gif/dice6.gif
το numberDiceB π.χ. μου δίνει ένα τυχαίο αριθμό απο 1-6.Αρα επιλέγω το
αρχείο "dice"+νουμερο_ζαριού+".gif" για εικόνα οπότε δεν θέλεις if που λες στο C ερώτημα
-χρησιμοποιώ την μέθοδο
setPreferredSize(new Dimension(70,70)) για να δώσω τις διαστάσεις που θέλω στο κουμπί
-setEnabled(false) για το μη ενεργό που αναφέρεις.
4) αρκετά κατανοητό

σου στέλνω και τις εικόνες των ζαριών που χρησιμοποίησα
Συνημμένα
diceGIFs.zip
(2.58 KiB) Μεταφορτώθηκε 258 φορές

nonfactor
Δημοσιεύσεις: 7
Εγγραφή: 23 Απρ 2009 10:36

Erotisi Newbie :)

Δημοσίευση από nonfactor » 23 Απρ 2009 14:32

se euxaristo poly file mou.H voitheia sou itan yperpolytimh. :)

Απάντηση

Επιστροφή στο “Java”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 0 επισκέπτες