sinnlos >>> "]" expected

Status
Nicht offen für weitere Antworten.
G

Gast Sav

Gast
immer wen ich auf compilieren drücke sagt mir BlueJ das in der Zeile
" Image feld[f] =Toolkit.getDefaultToolkit().getImage (karte [k]);" ein "]" fehlt, aber meines wissen muss da keins hin, bitte ....nein ....bettle um schnelle hilfe da dies mein projekt für die schule ist ( Black Jack Spiel als applikation >>soll funktionieren) und am 19.04.07 abgabetermin ist.....bittteeeeeee







Code:
import java.awt.*;
import java.io.*;
import javax.swing.*;
import java.util.*;
import java.lang.String;


public class Blackjack extends JFrame
{
   // Hauptfunktion
   public static void main(String[] args)
   {
      // Starten des Konstruktors der Klasse, Erzeugung eines neuen Objektes bj
      Blackjack bj = new Blackjack();
      bj.setLocation(10,10);
      // Objekt bj sichtbar machen
      bj.setVisible(true);
   }

   // Konstruktor
   public Blackjack()
   {
      // Frame Standard-Funktionen
      setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
      setSize(600,800);
      // Layout setzen und Komponenten hinzufügen
      setLayout(null);
      // Label
      Font fo1 = new Font("Serif", Font.BOLD, 26);
      // Zuweisung des Fonts
      Label labueberschrift = new Label("Java BlACk jAcK");
      labueberschrift.setBounds(10,30,380,30);
      add(labueberschrift);
      labueberschrift.setFont(fo1);
      Button halten =new Button("Halten");
      Button ziehen =new Button("Ziehen");
      Button neu    =new Button("Neues Spiel");
      halten.setBounds    (10,10,10,10);  // PROBE ACHTUNG ÄNDERN <<feld war zu groß>>
      ziehen.setBounds  (20,20,20,20);
      neu.setBounds     (30,30,30,30);
      add(halten);
      add(ziehen);
      add(neu);
           
             
   }
   public void paint(Graphics g)
   {
       int k,f,kx = 50,ky = 50;
       Random zufall=new Random(System.currentTimeMillis());
      
       k=zufall.nextInt(52+1);
       f=zufall.nextInt(4+1);
       
       String[] feld = {"gif1","gif3","gif4","gif5"};
       String[] karte = {"2_1.gif","2_2.gif","2_3.gif","2_4.gif",
          "3_1.gif","3_2.gif","3_3.gif","3_4.gif",
          "4_1.gif","4_2.gif","4_3.gif","4_4.gif",
          "5_1.gif","5_2.gif","5_3.gif","5_4.gif",
          "6_1.gif","6_2.gif","6_3.gif","6_4.gif",
          "7_1.gif","7_2.gif","7_3.gif","7_4.gif",
          "8_1.gif","8_2.gif","8_3.gif","8_4.gif",
          "9_1.gif","9_2.gif","9_3.gif","9_4.gif",
          "10_1.gif","10_2.gif","10_3.gif","10_4.gif",
          "B1.gif","B2.gif","B3.gif","B4.gif",
          "Q1.gif","Q2.gif","Q3.gif","Q4.gif",
          "K1.gif","K2.gif","K3.gif","K4.gif",
          "As1.gif","As2.gif","As3.gif","As4.gif"};
      Image feld[f] =Toolkit.getDefaultToolkit().getImage (karte [k]);
      
      g.drawImage(feld[f],kx,ky,this);
   }
}
:applaus: :applaus: :applaus:
 

Leroy42

Top Contributor
Code:
Image feld[f] =Toolkit.getDefaultToolkit().getImage (karte [k]);

Das geht doch gar nicht: getImage(...) liefert doch nur ein Image
zurück und kein Array:

Code:
Image image =Toolkit.getDefaultToolkit().getImage (karte [k]);
 
G

Gast Sav

Gast
Sorry aber ich n00b ..mega atom super n00b was java angeht bin für jede verbesserung oder änderung offen ...wie würdest du denn das machen ...ich habe 52 gif bilder die meine karten darstellen und ich will erreichen das diese per random rausgepickt und angezeigt werden ... (wie ich den gifs werte zuweise so das ich nachher mit einem label die punkte ausgeben kann weiss ich noch nicht soweit kam ich ja nicht.... thx für alle die mir verushen zu helfen
 
S

SlaterB

Gast
allgemeiner Tipp:
mache nichts unnötig oft und schon gar nich in so einer zeitkritischen Operation wie paint,

das Array karte ist relativ aufwendig zu erstellen und ändert sich nie
-> nur einmal als Exemplarvariable in der Klasse speichern

auch könntest du die 52 Bilder vorher laden oder zumindest in einer Operation kurz vor dem paint-Aufruf,
(nagut, das wird dann langsam zu aufwendig, nix für Anfänger)
----

ansonsten besteht momentan keine Frage von dir?

> thx für alle die mir verushen zu helfen
wird nicht viel Reaktion hervorrufen, mein obiger Text auch nur ein Alibi,

wollte 'du hast keine Frage mehr?' nicht nur für sich alleine posten ;)
 

JPKI

Top Contributor
Wenn du dabei statt
Code:
Image img = Toolkit.getDefaultToolkit().getImage(karte[k]);
Code:
Image img = new javax.swing.ImageIcon(getClass().getResource(karte[k])).getImage();
verwendest, werden die Bilder direkt geladen, und nicht erst, wenn du das erste mal paint() aufrufst.
 

L-ectron-X

Gesperrter Benutzer
Welche der beiden Varianten er verwendet ist völlig Wurst.
Aber keine der beiden sollte in der paint()-Methode stehen.

Bilder werden im Konstruktor geladen.
 
G

Gast Sav

Gast
Aber wie soll ich das bild dann darstellen ich kann dann keinen g.drawImage (img,x,y,this) anwenden weil der dann img nicht mehr kennt....

Diese Variante ist mir persönlich auch lieber aber ich weiss nicht wie ich dann die verbindung mit paint hin bekomme bzw. wie ich das bild darstelle irgendwo muss ich ja schließlich die koordinaten angeben oder nicht??
 
S

SlaterB

Gast
was hat das Laden der Bilder mit den Koordinaten zu tun?

und wenn du die Bilder im Konstruktor lädst, dann natürlich so,
dass du in paint darauf zugreifen kannst,
z.B. in einem Array als Exemplarvariable gespeichert,

wenn dir 'Exemplarvariable' nichts sagt,
dann wird das ohne weiteres Grundlagen-Lernen zunächst noch nichts
 
G

Gast Sav

Gast
Ich habe den Quelltext nun etwas verändert einiges Funktioniert aber nun habe ich das Problem, dass mein button "ziehen" nicht funktioniert...Ich will das j dekrementiert wird und dann nochmal die paint durchlaufen wird damit die nächste karte ausgegeben wir.....

Code:
import java.awt.*;
import java.awt.event.*;
import java.io.*;
import javax.swing.*;
import java.util.*;
import java.lang.String;

//////////////////////////////////////////////////////////////////////////////////
//////////////////////Java Black Jack Applikation/////////////////////////////////
////////////////////////XXXXXXXXXXXXXXXXXXXXXXX///////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////


public class Blackjack extends Frame
{
   Random zufall=new Random();
   // Hier werden die  int Variablen deklariert. In a,b,c,d,e,f,h,j sind Zufallszahlen generiert mit Hilfe der Klasse Random      
   int j=5,kx=200,ky=200,punktestand=0,i=1,points,   
      a=zufall.nextInt(52),
      b=zufall.nextInt(52),
      c=zufall.nextInt(52),
      d=zufall.nextInt(52),
      e=zufall.nextInt(52),
      f=zufall.nextInt(52),
      h=zufall.nextInt(52),
      k=zufall.nextInt(52);
            
    String[] karte = {"2_1.gif","2_2.gif","2_3.gif","2_4.gif",
                      "3_1.gif","3_2.gif","3_3.gif","3_4.gif",
                      "4_1.gif","4_2.gif","4_3.gif","4_4.gif",
                      "5_1.gif","5_2.gif","5_3.gif","5_4.gif",
                      "6_1.gif","6_2.gif","6_3.gif","6_4.gif",
                      "7_1.gif","7_2.gif","7_3.gif","7_4.gif",
                      "8_1.gif","8_2.gif","8_3.gif","8_4.gif",
                      "9_1.gif","9_2.gif","9_3.gif","9_4.gif",
                      "10_1.gif","10_2.gif","10_3.gif","10_4.gif",
                      "B1.gif","B2.gif","B3.gif","B4.gif",
                      "Q1.gif","Q2.gif","Q3.gif","Q4.gif",
                      "K1.gif","K2.gif","K3.gif","K4.gif",
                      "As1.gif","As2.gif","As3.gif","As4.gif"};
     int[] kartenpunkte = {2,2,2,2,3,3,3,3,4,4,4,4,
                           5,5,5,5,6,6,6,6,7,7,7,7,
                           8,8,8,8,9,9,9,9,10,10,10,10,
                           10,10,10,10,10,10,10,10,
                           10,10,10,10,10,10,10,10};
    
     TextField punkteBank = new TextField (10);
     TextField punkteSpieler = new TextField (10); 
   
     // Hauptfunktion
     public static void main(String[] args)
     {
        // Starten des Konstruktors der Klasse, Erzeugung eines neuen Objektes bj
        Blackjack bj = new Blackjack();
        bj.setLocation(10,10);
        // Objekt bj sichtbar machen
        bj.setVisible(true);
     }

     // Konstruktor
     public Blackjack()
     {  
        // Frame Standard-Funktionen
        setSize(800,600);
        // Layout setzen und Komponenten hinzufügen
        setLayout(null);
        // Label
        Font font1 = new Font("Arial", Font.BOLD, 26);
        // Zuweisung des Fonts
        Label labueberschrift = new Label("Java Black Jack");
        // Erzeugen Bounden und Adden der Buttons 
        labueberschrift.setBounds(200,30,500,30);
        Button halten =new Button("Halten");                        
        Button ziehen =new Button("Ziehen");                        
        Button neu    =new Button("Neues Spiel");
        //Erzeugen der Radiobuttons für die Auswahl ob Ass als Eins oder als 11 gezählt wird.
        JRadioButton ass1 =new  JRadioButton("Ass als 1 Werten" , true),
                     ass10 =new JRadioButton("Ass als 10 Werten" , false);  
        //Zuweisen des Fonts
        labueberschrift.setFont(font1);
        punkteBank.setFont(font1);
        punkteSpieler.setFont(font1);
        halten.setFont(font1);
        ziehen.setFont(font1);
        neu.setFont(font1);
        ass1.setFont(font1);
        ass10.setFont(font1);
        punkteBank.setEditable(false);
        punkteSpieler.setEditable(false);
        //Bounden der Elemente
        halten.setBounds  (133,400,100,80);
        ziehen.setBounds  (366,400,100,80);
        neu.setBounds     (599,400,100,80);
        punkteBank.setBounds(133,300,70,50);
        punkteSpieler.setBounds(133,350,70,50);
        ass1.setBounds(400,300,50,50);
        ass10.setBounds(400,360,50,50);
        //Adden der Elemente
        add(labueberschrift);
        add(halten);
        add(ziehen);
        add(neu);
        add(punkteSpieler);
        add(punkteBank);
        add(ass1);
        add(ass10);
        //Zuordnung der Inneren Klassen
        //Buttongroup festlegen
        ButtonGroup ass = new ButtonGroup();
        ass.add(ass1); 
        ass.add(ass10);
     }
   
     //Hier werden die Karten dargestellt
     public void paint(Graphics g)
     {
        System.out.println("paint aufgerufen!! ******************");
        //Hintergrundfarbe wird auf grün gesetzt
        //g.setBackground(Color.green);
        //Karten werden geladen
        System.out.println("a = "+a);
        System.out.println("b = "+b);
        System.out.println("c = "+c);
        System.out.println("d = "+d);
        System.out.println("e = "+e);
        System.out.println("f = "+f);
        System.out.println("h = "+h);
        System.out.println("k = "+k);
        
        Image s_1 = new javax.swing.ImageIcon(getClass().getResource(karte[a])).getImage();
        Image s_2 = new javax.swing.ImageIcon(getClass().getResource(karte[b])).getImage();
        Image s_3 = new javax.swing.ImageIcon(getClass().getResource(karte[c])).getImage();
        Image s_4 = new javax.swing.ImageIcon(getClass().getResource(karte[d])).getImage();
        Image b_1 = new javax.swing.ImageIcon(getClass().getResource(karte[e])).getImage();  
        Image b_2 = new javax.swing.ImageIcon(getClass().getResource(karte[f])).getImage();  
        Image b_3 = new javax.swing.ImageIcon(getClass().getResource(karte[h])).getImage();
        Image b_4 = new javax.swing.ImageIcon(getClass().getResource(karte[k])).getImage();
        //Karten werden Ausgegeben
      if(j==5)
      {
        g.drawImage(s_1,kx,ky,this);kx=kx+100;
        g.drawImage(s_2,kx,ky,this);kx=kx+100;
        points=0+kartenpunkte[a]+kartenpunkte[b];
        punkteSpieler.setText(""+points);
      }
      else
      {  
        if(j==4)  
        { points=points+kartenpunkte[c];
        g.drawImage(s_3,kx,ky,this);kx=kx+100;
        punkteSpieler.setText(""+points);
      
      
        }
          else{  
           if(j==3)
           {  
           points=points+kartenpunkte[d];
           g.drawImage(s_4,kx,ky,this);kx=kx-300;ky=ky+100;
           punkteSpieler.setText(""+points);
           }
             else
             {
              if(j==2)  
              { 
              g.drawImage(b_1,kx,ky,this);kx=kx+100;
              punkteBank.setText(""+points);
              g.drawImage(b_2,kx,ky,this);kx=kx+100;

              }
               else
               {
               g.clearRect(800,600,800,600); 
               }
             }
           }
        }
      }

   // Dieser Button Beenden den Zug des Spielers und 
   //offenbart die Karten der Bank und die Punkte der Bank
   class halten implements ActionListener
   {
      public void actionPerformed(ActionEvent e)
      {
   	   
   	   
   	    punkteBank.setText("OK");
   	    
   	    
   	   
      }
   }

   class bAss implements ActionListener
   {
      public void actionPerformed(ActionEvent e)
      {
         
       }
   }
   class ziehen implements ActionListener
   {
      public void actionPerformed(ActionEvent e)
      {
       j--;  
       //     hier will ich ein repaint einbauen aber ich weiss nicht wie ich den 
       //     befehl formulieren muss ich dachte der wäre                 
      //     nur repaint (); aber das klappt irgenwie nicht....  
       }
   }
}
 

Tobias

Top Contributor
das repaint() muß natürlich auf einem Objekt aufgerufen werden... Also auf deinem Frame.

mpG
Tobias
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
monsterherz Circle.java:5: error: <identifier> expected Java Basics - Anfänger-Themen 2
monsterherz error: <identifier> expected Java Basics - Anfänger-Themen 2
M error: '.class' expected switch(char) Java Basics - Anfänger-Themen 32
franzi.ska Blue-j: ‘]‘ expected Java Basics - Anfänger-Themen 1
C error: <identifier> expected Java Basics - Anfänger-Themen 13
P <identifier> expected Java Basics - Anfänger-Themen 3
J Compiler-Fehler Illegal Start of expression / '/'expected Java Basics - Anfänger-Themen 3
L Methoden Zugriff <identifier> expected Java Basics - Anfänger-Themen 13
Z Klassen Error: ';' expected - was mache ich falsch? Java Basics - Anfänger-Themen 4
J Compiler-Fehler class interface or enum expected Java Basics - Anfänger-Themen 1
J Syntax error on token ";",, expected Java Basics - Anfänger-Themen 2
lBlKha0s Fehlermeldung : class interface or enum expected Java Basics - Anfänger-Themen 9
W Compiler-Fehler Fehler - <identifier> expected, wo liegt mein Fehler? Java Basics - Anfänger-Themen 4
T error: class, interface, or enum expected Java Basics - Anfänger-Themen 5
D Compiler-Fehler error: .class expected Java Basics - Anfänger-Themen 2
S Compiler-Fehler error: ';' expected (finde Fehler nicht) Java Basics - Anfänger-Themen 10
P <identifier> expected Fehler bitte um Hilfe Java Basics - Anfänger-Themen 5
J identifier expected Java Basics - Anfänger-Themen 2
D Erste Schritte Fehlermeldung "Syntax error on token ";", { expected after this token" Java Basics - Anfänger-Themen 13
L Compiler-Fehler error: class, interface or enum expected Java Basics - Anfänger-Themen 2
B Compiler-Fehler 86:11: error: ';' expected obwohl kein ";" hingehört! Java Basics - Anfänger-Themen 10
F .class expected Java Basics - Anfänger-Themen 3
M Syntax error on token ";", { expected after this token Java Basics - Anfänger-Themen 3
0 .class expected Arrays -- warum? Java Basics - Anfänger-Themen 9
P Compiler-Fehler "class, interface, or enum expected" Java Basics - Anfänger-Themen 5
K class, interface or enum expected Java Basics - Anfänger-Themen 14
S expected java.lang.string but found char Java Basics - Anfänger-Themen 5
R Switch Abfrage: Found boolean but expected int? Java Basics - Anfänger-Themen 7
T class, interface, or enum expected Java Basics - Anfänger-Themen 2
K <identifier> expected Java Basics - Anfänger-Themen 18
L Polymorphie <identifier> expected trotz "Angabe" Java Basics - Anfänger-Themen 2
2 <identifier> expected - Problem Java Basics - Anfänger-Themen 2
O Fragezeichenoperator assert expected Java Basics - Anfänger-Themen 7
S Methode mit zweidimensionalem Array als Parameter: '.class' expected Java Basics - Anfänger-Themen 2
H einfaches Array -> ']' expected Java Basics - Anfänger-Themen 9
W '.class' expected Java Basics - Anfänger-Themen 5
J class, interface, or enum expected - finde Fehler nicht. Java Basics - Anfänger-Themen 4
I ';' expected, kann den Fehler nicht finden... Java Basics - Anfänger-Themen 2
D class, interface or enum expected Java Basics - Anfänger-Themen 2
J class expected Java Basics - Anfänger-Themen 4
M return Fehler .class expected Java Basics - Anfänger-Themen 19
J class, interface, or enum expected Java Basics - Anfänger-Themen 4
danielita Identifier Expected Java Basics - Anfänger-Themen 8
I identifier und ) expected Java Basics - Anfänger-Themen 3
T class, interface or enum expected Java Basics - Anfänger-Themen 3
D "Illegal Start of Expression" und "; expected Java Basics - Anfänger-Themen 3
T .class expected Java Basics - Anfänger-Themen 5
NoXiD ; Expected Java Basics - Anfänger-Themen 2
P public enum ";"expected Java Basics - Anfänger-Themen 7
G <identifier> expected bei public void final Java Basics - Anfänger-Themen 3
D "identifier expected" und "cannot find symbol Java Basics - Anfänger-Themen 4
G Blue J - Fehlermeldung - identifier expected - illegal start Java Basics - Anfänger-Themen 6
zilti identifier expected bei Threads Java Basics - Anfänger-Themen 2
E <identifier> expected in List Java Basics - Anfänger-Themen 8
G "Identifier expected" Java Basics - Anfänger-Themen 9
S idetifier expected Java Basics - Anfänger-Themen 3
H <identifier> expected Java Basics - Anfänger-Themen 19
P Wieso kommt die Fehlermeldung ".class expected"? Java Basics - Anfänger-Themen 2
B Syntax error on token ";", { expected after this t Java Basics - Anfänger-Themen 7
G array list - identifier expected Java Basics - Anfänger-Themen 4
M Fehler Identifier Expected Java Basics - Anfänger-Themen 4
J [JavaKara] '.' expected import JavaKaraProgram Java Basics - Anfänger-Themen 2
K Array deklarieren und befüllen; "]" expected Java Basics - Anfänger-Themen 7
N Fehler <identifier> expected. Weiss nicht was falsch i Java Basics - Anfänger-Themen 2
K identifier expected | problem mit variable Java Basics - Anfänger-Themen 6
G identifier expected Java Basics - Anfänger-Themen 2
J Fehler identifier expected Java Basics - Anfänger-Themen 10
K 'class' or 'interface' expected Java Basics - Anfänger-Themen 3
G Fehlermeldung ']' expected, Objekterstellung in Laufzeit Java Basics - Anfänger-Themen 8
B Compiler Fehler "{" expected, kann doch nich sein? Java Basics - Anfänger-Themen 9
S syntax error variable declarator ID expected Java Basics - Anfänger-Themen 3
M Problem mit "<identifier> expected" in Actio Java Basics - Anfänger-Themen 4

Ähnliche Java Themen


Oben