Toon posts:

[JAVA] JFrame

Pagina: 1
Acties:

Verwijderd

Topicstarter
wie kan me helpen met het maken van de een mouselistener voor de volgende code:

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
52
53
54
55
56
class keuzeFrame extends JFrame
{
    public keuzeFrame()
    {
        ActionListener listener = new ActionListener();
        
        // Maak het frame en geef de specificaties op.
        setSize(250,200);
        setLocation(200,200);
        setResizable(false);
        
        // tekst velden, de lege hebben we nodig om alles netjes uit te lijnen.
        JLabel titleField = new JLabel("Lingo");
        JLabel empty1 = new JLabel(" ");
        JLabel empty2 = new JLabel(" ");
        JLabel empty3 = new JLabel(" ");
        JLabel empty4 = new JLabel(" ");
        JLabel empty5 = new JLabel(" ");

        // maak spelkeuzeGroep en creeer de daarvoor benodigde buttons
        ButtonGroup spelkeuzeGroep = new ButtonGroup();
        JRadioButton computerButton = new JRadioButton("computer");
        JRadioButton mensButton = new JRadioButton("mens");
        spelkeuzeGroep.add(computerButton);
        spelkeuzeGroep.add(mensButton);

        // maak woordlengteGroep en creeer de daarvoor benodigde buttons
        ButtonGroup woordlengteGroep = new ButtonGroup();
        JRadioButton vijfButton = new JRadioButton("5");
        vijfbutton.addActionListener(listener);
        JRadioButton zesButton = new JRadioButton("6");
        woordlengteGroep.add(vijfButton);
        woordlengteGroep.add(zesButton);

        // maak een ok-knop aan
        JButton okButton = new JButton("Start het spel!");
        
        JPanel panel = new JPanel();
        panel.setLayout(new GridLayout(6,2));
        panel.add(titleField);
        panel.add(empty1);
        panel.add(empty2);
        panel.add(empty3);

        panel.add(computerButton);
        panel.add(vijfButton);

        panel.add(mensButton);
        panel.add(zesButton);
        panel.add(empty4);
        panel.add(empty5);

        
        panel.add(okButton);

        setContentPane(panel);

Verwijderd

Wat moet die MouseListener doen?
Wat snap je daar niet aan?
Waar dient de code voor die je gegeven hebt?
m.a.w. omschrijf het probleem wat beter en kijk ondertussen in de java documentatie bij java.awt.event.MouseListener...

Verwijderd

Topicstarter
die mouselistener moet kijken welke opties zijn geselecteerd, en dan uiteindelijk de verkregen waardes naar het main-programma doorsturen.
De code die je hier ziet is onderdeel van het spelletje lingo dat ik aan het maken ben, dit JFrame wil ik vantevoren laten laden om de user aan te kunnen laten geven welk 'type' spel hij wil spelen

edit:

aangezien ik nog niet zo lang bezig ben met programmeren kan ik nog niet zo goed over weg met de API, vandaar ook dat ik hier de vraag stel


  • Glimi
  • Registratie: Augustus 2000
  • Niet online

Glimi

Designer Drugs

(overleden)
Hoe wou je dit in hemelsnaam je voorstellen dit te doen :

Java:
1
ActionListener listener = new ActionListener();

Je probeert hier een interface te initialiseren :? Heb je überhaupt een idee wat interfaces zijn?

Kijk hier even naar en het wordt vast duidelijker: http://java.sun.com/docs/...interpack/interfaces.html

  • Alarmnummer
  • Registratie: Juli 2001
  • Laatst online: 09-07-2024

Alarmnummer

-= Tja =-

Als we toch even lastig gaan doen:

ActionListener listener = new ActionListener(){
...public void actionPerformed(ActionEvent ae){System.out.println("gedrukt");}
};

:+

  • Glimi
  • Registratie: Augustus 2000
  • Niet online

Glimi

Designer Drugs

(overleden)
Alarmnummer schreef op 04 oktober 2002 @ 13:38:
Als we toch even lastig gaan doen:

ActionListener listener = new ActionListener(){
...public void actionPerformed(ActionEvent ae){System.out.println("gedrukt");}
};

:+
Owjah, smeer hem maar gelijk een anonieme subclass aan. Gaat ie straks nog een topic openen over dat ie niet bij de !final vars kan komen :)

Ik denk dat de topicstarter beter een implements op zijn applet kan gooien zodat we zo ook nog wat te wijsneuzen hebben :+

  • Alarmnummer
  • Registratie: Juli 2001
  • Laatst online: 09-07-2024

Alarmnummer

-= Tja =-

Glimi schreef op 04 oktober 2002 @ 13:43:
Ik denk dat de topicstarter beter een implements op zijn applet kan gooien zodat we zo ook nog wat te wijsneuzen hebben :+
Je kan die interface wel op die applet implementeren, maar das echt heel lelijk (ik neem aan dat jij dit ook niet doet). Je kan veel beter een innerclass daarvoor gebruiken.

class DeApplet extends Applet{
...DeApplet(){
......button1.addActionListener(new ButtonOneActionListener());
...}

...class ButtonOneActionListener implements ActionListener{
......public void actionPerformed(ActionEvent ae){
.........System.out.println("gedrukt");
......}
...}
}

en verder werk ik zelf altijd met acties ipv actionListeners, omdat je daar wat extra mogelijkheden bij hebt zoals makkelijk disablen ed.

  • Glimi
  • Registratie: Augustus 2000
  • Niet online

Glimi

Designer Drugs

(overleden)
Alarmnummer schreef op 04 oktober 2002 @ 13:55:
[...]

Je kan die interface wel op die applet implementeren, maar das echt heel lelijk (ik neem aan dat jij dit ook niet doet). Je kan veel beter een innerclass daarvoor gebruiken.
Nee ik gebruik vaak een anonieme subclass als hij niet hergebruikt hoeft te worden en anders een private subclass als hij voor 2 knoppen zou kunnen voldoen.
Wat ik eigenlijk bedoelde was dat 1) anonieme subclasses voor de TS niet bijdragen aan begrijpbaarheid 2) als hij een Listener iplementeerd op zijn applet we zo nog wat te mekkeren kunnen hebben :+
en verder werk ik zelf altijd met acties ipv actionListeners, omdat je daar wat extra mogelijkheden bij hebt zoals makkelijk disablen ed.
Acties :? Heb ik eigenlijk nog nooit van gehoord

  • Alarmnummer
  • Registratie: Juli 2001
  • Laatst online: 09-07-2024

Alarmnummer

-= Tja =-

Action okAction = new AbstractAction("ok"){
...public void actionPerformed(ActionEvent ae){..}
};

okButton.setAction(okAction);
okMenuItem.setAction(okAction);

okAction.setEnabled(false); //nu is button en menu item gedisabled.

  • Glimi
  • Registratie: Augustus 2000
  • Niet online

Glimi

Designer Drugs

(overleden)
Ow, bedoel je dat :) Ja die ken ik wel :+ excuus

  • Tycho2
  • Registratie: Januari 2002
  • Niet online
He vledder....

Lastig he dat Arno niet kan uitleggen :)
Maar met paragraaf 10.1 van je boek moet je er toch wel uit kunnen komen ? is redelijk duidelijk uitgelegt.
oh fuck, jij hebt natuurlijk de nieuwe druk, maar is in ieder geval de paragraaf over Events, Event Listeners en Event Sources.

Vraag anders morgen ofzo even een oudere jaars.....die zijn zeker bereid ff naar je code te kijken...
Maar het lijkt me trouwens stug dat je er met de hulp van de mensen die hierboven gereageerd hebben er niet uit komt :).

Verwijderd

Topicstarter
ej tycho..
thnx.
Arno is idd een beetje een softie waar ik nix aan heb, maar goed het gaat allemaal goed komen ik voel, ook kan ik dan nog niet programmeren :P
Pagina: 1