[JAVA] knoppen geen text ?

Pagina: 1
Acties:

  • boiert
  • Registratie: Oktober 2002
  • Laatst online: 25-06-2024
ok, ik zit met het volgende probleem
ik heb een paar knoppen op een Panel staan, en zij willen geen text in zich krijgen

code:
1
2
3
4
5
6
7
8
9
10
11
    rechtsomknop = new Button("V");
    rechtsomknop.setActionCommand("rechts");
    rechtsomknop.addActionListener(this);
    rechtsomknop.setBounds(75, 38, 30, 38);

    linksomknop = new Button("^");
    linksomknop.setActionCommand("links");
    linksomknop.addActionListener(this);
    linksomknop.setBounds(75, 0, 30, 38);
    add(linksomknop);
    add(rechtsomknop);

is de code, en in een leeg ding werkt het ook, maar in mij applicatie niet

http://www.quadsthegame.nl/downloads/quads.alpha.0.07.zip <== source + plaatjes

heeft iemand een idee waardoor dit komt en hoe dit op te lossen is?

btw.
dit is inderdaad een huiswerkopdracht maar het gaat alleen om de knoppen, de rest kan ik (hopelijk) zelf wel.

[ Voor 4% gewijzigd door boiert op 14-04-2004 20:10 ]


Verwijderd

Als ik in jouw source (van Steen.java) kijk dan zie ik dit


code:
1
2
3
4
5
6
7
8
9
10
11
12
ImageIcon nextIcon = createImageIcon("rotatieknopbeneden.gif", "a right arrow");
ImageIcon previousIcon = createImageIcon("rotatieknopboven.gif", "a left arrow");

rechtsomknop = new JButton("", nextIcon);
rechtsomknop.setActionCommand("rechts");
rechtsomknop.addActionListener(this);
rechtsomknop.setBounds(75,38,30,38);

linksomknop = new JButton("", previousIcon);
linksomknop.setActionCommand("links");
linksomknop.addActionListener(this);
linksomknop.setBounds(75,0,30,38);


Volgens de API van JButton wil de constructor van JButton een String en dan een Icon.. dat geef je ook wel mee maar als eerste een lege String. Logisch dat je dan geen text ziet op de JButton toch?

  • boiert
  • Registratie: Oktober 2002
  • Laatst online: 25-06-2024
oops, verkeerde code denk ik, zal ff kijken want hier staat geen jbutton meer (awt/swing tegelijk werkte niet echt) [startpost geupdate]

[ Voor 9% gewijzigd door boiert op 14-04-2004 20:11 ]


Verwijderd

boiert schreef op 14 april 2004 @ 20:10:
oops, verkeerde code denk ik, zal ff kijken want hier staat geen jbutton meer (awt/swing tegelijk werkte niet echt) [startpost geupdate]
Ik zal nog eens kijken... misschien handig om van te voren even te vertellen waar in welke file de betreffende code staat. Ik weet inmiddels waar het staat maar andere nog niet :)

  • boiert
  • Registratie: Oktober 2002
  • Laatst online: 25-06-2024
ok, het staat dus in steen.java

Verwijderd

Wanneer zou ik de knop moeten zien? Als het opstart zie ik het bord en linksonder een knop met "Help". Alles als ik op het 1e steentje linksboven klik (die ene zonder een zwart driehoekje erop) dan krijg ik 2 extra knoppen. Zijn dat de knoppen waar het om gaat?

  • boiert
  • Registratie: Oktober 2002
  • Laatst online: 25-06-2024
ja, die staan in het paneel van steen :P
elke steen is een paneel, dus elke steen heeft die knoppen, je moet alleen eerst de 2 neutrale stenen spelen om de rest te mogen spelen

Verwijderd

Ok ik snap het :) Ik heb een aantal dingen geprobeerd maar ik krijg het niet voor elkaar. Het enige wat het nog zou kunnen zijn is het de grootte van het Canvas (of wat het ook is) waarop de steen komt te staan samen met de 2 knoppen. Als ik de knoppen onwijs groot maak zie ik dat het voor een klein gedeelte zichtbaar is. Ik kon zo snel niet vinden
(jij kent de code beter dan ik :P) waar je dat aanmaakt. Wellicht is die ruimte te klein voor de knoppen en is de tekst er wel maar zie je het niet. Snap je wat ik bedoel?

  • boiert
  • Registratie: Oktober 2002
  • Laatst online: 25-06-2024
ik begrijp wat je bedoelt, maar ik zie zelfs met een knop van 300x300 px niks :(

Verwijderd

Dat heb ik dus ook geprobeerd..maar die knoppen lijken niet groter te worden. Dat komt omdat het Panel waarop je die knoppen gooit te klein is. Waar definieer je die en waar kan ik dus die grootte veranderen?

  • boiert
  • Registratie: Oktober 2002
  • Laatst online: 25-06-2024
zo ziet het er normaal uit:
Afbeeldingslocatie: http://www.quadsthegame.nl/downloads/normaal.jpg

met 300x300 knop en 400x400 canvas:

Afbeeldingslocatie: http://www.quadsthegame.nl/downloads/300x300.jpg

Verwijderd

Ok, je hebt me overtuigd dat dat niet de oorzaak is :)

  • boiert
  • Registratie: Oktober 2002
  • Laatst online: 25-06-2024
staat ook in steen.java
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
  public void mousePressed(MouseEvent e) {
    //als deze steen geselecteerd is
    if (geselecteerd == false) {
      //als er verder ook geen steen geselecteerd is
      if (quads.geselecteerd() == false) {
        // als deze speler aan de beurt is
        if (quads.aandebeurt() == speler) {
          if (nummer == 0) {
            //zet geselecteerd op true (aangezien deze steen geselecteerd is)
            geselecteerd = true;
            // selecteer de steen in quads en geef quads de nodige info
            quads.steengeselecteerd(nummer, speler, driehoek1, driehoek2,
                                    driehoek3, driehoek4);
            // steen rechtsboven of linksboven in het scherm, afhankelijk van de speler
            if (speler == 1) {
              this.setBounds(10, 50, 106, 76); <== deze
            }
            else {
              this.setBounds(910, 50, 106, 76); <== of deze
            }
            //voeg knoppen toe om te kunnen draaien en geef ze weer
            add(linksomknop);
            add(rechtsomknop);
            linksomknop.setVisible(true);
            rechtsomknop.setVisible(true);

Verwijderd

Ik weet het niet meer :/ Het enige dat je nog zou kunnen proberen is expliciet het label setten met de methode setLabel(String label). Voor de rest zou ik het niet meer weten...

  • boiert
  • Registratie: Oktober 2002
  • Laatst online: 25-06-2024
ook al geprobeerd :'( heeft geen zin :'(

Verwijderd

boiert schreef op 14 april 2004 @ 20:55:
staat ook in steen.java
code:
1
2
3
4
5
  public void mousePressed(MouseEvent e) {
    //als deze steen geselecteerd is
    if (geselecteerd == false) {
      //als er verder ook geen steen geselecteerd is
      if (quads.geselecteerd() == false) {
Even een losse flodder.....

Je zegt in je commentaar "als deze steen geselecteerd is" en je test is (geselecteerd == false) :?

  • boiert
  • Registratie: Oktober 2002
  • Laatst online: 25-06-2024
oops :P beetje fout commentaar :P hoort idd niet te zijn, anders kan je een geselecteerde steen selecteren :P

  • boiert
  • Registratie: Oktober 2002
  • Laatst online: 25-06-2024
nog steeds geen knoppen, maar nu worden teninste alle regels van het spel nageleefd
http://www.quadsthegame.nl/downloads/quads.rc1.zip

compiled
http://www.quadsthegame.nl/downloads/quads.binaries.zip

heb ff geen id hoe ik de plaatjes in de jar/exe/whatever krijg en bestwel te moe om dat uit te vinden dus :P:P

  • boiert
  • Registratie: Oktober 2002
  • Laatst online: 25-06-2024
oops, geen 2 x add() doen :S :S :S
my bad
Pagina: 1