Ergebnis 1 bis 1 von 1
  1. #1
    SurviveX SurviveX ist offline
    Avatar von SurviveX

    JAVA Probleme und Fragen

    Hallo miteinander. Ich habe vorgestern Zeit gefunden mit JAVA anzufangen. Ich möchte ein kleines RPG-Game realisieren. Es soll nicht veröffentlicht werden, ich möchte mir nur mal eine Map basteln und ein paar NPC's. Jetzt bin ich gerade an den Basics dran und ich wollte mir einen Textformatierer zusammenbasteln.
    Dieser soll den Text den ich eingebe unten in der gewünschten Grösse und Schriftart ausgeben. Die Schriftart und die Grösse soll man sich per Checkbox aussuchen. Sobald das Grundgerüst da ist möchte ich es zu einem Editor erweitern (halt einfach noch mit Dateien und je nach Lust und Laune werde ich ein paar Optionen versuchen ...).

    Hier mal der Code (wahrscheinlich nicht so gut leserlich, ich habs aber versucht ...
    Code:
    import java.awt.*;
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;
    import java.awt.event.WindowAdapter;
    import java.awt.event.WindowEvent;
     
    import javax.swing.*;
     
     
    public class swing1 extends JFrame implements ActionListener {
     
    	// Buttons
        JButton beenden = new JButton("Beenden");
        JButton ausgabe = new JButton("Ausgabe");
        JButton schnormal = new JButton ("Sansserif");
        JButton schserif = new JButton ("Serif");
        JButton schmono = new JButton ("Monospaced");
        JButton scharia = new JButton ("Arial");
        
        //JTextFelder
        JTextField ausgabex = new JTextField(10);
        JTextField eingabe = new JTextField(10);
        
        //Strings die ich brauche um dynamisch zu programmieren
        String speicher = new String();
        String schrift = new String();
     
     
        public swing1() {
             super("Versuch");
        }
     
        public void createGUI() {
        	
        	// Das Fenster wird hier initialisiert
        	// Anmerkung: Da ich auch in Zukunft ohne Layout Manager arbeiten möchte
        	// habe ich Resizable auf false gestellt und das Layout auf null
            this.setVisible(true); 
            setSize(500,435);
            setLocation(100,100);
            setResizable(false);
            setDefaultCloseOperation(WindowConstants.DO_NOTHING_ON_CLOSE);
            JPanel panel = new JPanel();
            add(panel);
            panel.setLayout(null);
            //Die Buttons mit der entsprechenden Grösse und Location
            panel.add(beenden);
            beenden.setSize(100,25);
            beenden.setLocation(400,375);
            panel.add(schnormal);
            schnormal.setSize(100,25);
            schnormal.setLocation(400,35);
            panel.add(schserif);
            schserif.setSize(100,25);
            schserif.setLocation(400,60);
            panel.add(schmono);
            schmono.setSize(100,25);
            schmono.setLocation(400,85);
            panel.add(scharia);
            scharia.setSize(100,25);
            scharia.setLocation(400,110);
            panel.add(eingabe);
            eingabe.setSize(400,200);
            eingabe.setLocation(0,0);
            panel.add(ausgabe);
            ausgabe.setSize(100,25);
            ausgabe.setLocation(400,350);
            panel.add(ausgabex);
            ausgabex.setEditable(false);
            ausgabex.setSize(400,200);
            ausgabex.setLocation(0,200);
            
            // Unten versuche ich ein Bild anzeigen zu lassen
            // Ich habe es aus dem Internet rausgefischt, klappt nicht ...
            // getContentPane().add(new JLabel(new ImageIcon("mario.jpg")));
            // pack;
     
     
            panel.setVisible(true);
            addWindowListener(new meinWindowListener());
            beenden.addActionListener(this);
            ausgabe.addActionListener(this);
            schnormal.addActionListener(this);
            schserif.addActionListener(this);
            schmono.addActionListener(this);
            scharia.addActionListener(this);
        }
     
        public class meinWindowListener extends WindowAdapter{
              public void windowClosing(WindowEvent a){
                System.exit(0);
              }
            }
     
        public void actionPerformed(ActionEvent e){
              if (e.getSource() == this.beenden) System.exit(0);
     
              if (e.getSource() == this.ausgabe) {
                  speicher = eingabe.getText();
                  ausgabex.setFont(new Font(schrift,Font.PLAIN,12));
                  ausgabex.setText(speicher);
                  System.out.println(speicher);
     
              }
     
              if (e.getSource() == this.schnormal) {
               schrift = new String("sansserif");
              }
     
              if (e.getSource() == this.schserif) {
               schrift = new String("serif");
              }
     
              if (e.getSource() == this.schmono) {
               schrift = new String("monospaced");
              }
     
              if (e.getSource() == this.scharia) {
               schrift = new String("arial");
              }
     
          }
     
        public static void main(String[] args) {
     
            swing1 GUI = new swing1();
            GUI.createGUI();
        }
     
    }
    Nun meine Frage zu diesem Code wären:
    • Mit welcher Variable kann ich etwas wie Font.PLAIN ersetzen?
    Bei Text ist es String, bei Zahlen int. Wie kriege ich das mit Font.PLAIN hin, das wird nämlich nicht in "" geschrieben, also ist es auch kein String...

    • Wie zeige ich ein Bild an?
    Ich habe schon verschiedene Methoden versucht, aber keine aus dem Internet klappt bei mir. Hier mal ein älterer Versuch, da wird das Bild gefunden aber es wird nicht angezeigt:
    Code:
    import java.awt.*;
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;
    import java.awt.event.WindowAdapter;
    import java.awt.event.WindowEvent;
     
    import javax.swing.*;
     
     
     
    public class swing extends JFrame implements ActionListener
    {
     
            /*Erstelle Instanzen (2 Buttons, 1 Hintergrundbild)*/
            JButton button = new JButton("Beenden");
            JButton ausgabe = new JButton("Ausgabe");
            JTextField eingabe = new JTextField();
            ImageIcon icon = createImageIcon("images/mario.png",
        "images/Hintergrundbild");
     
           
            public static void main(String[] args){
                    swing s = new swing();
                    s.createGUI();
                   
            }
           
            public void actionPerformed(ActionEvent e){
                      if (e.getSource() == this.button) System.exit(0);
                     
                      if (e.getSource() == this.ausgabe) System.out.println("Versuch");
              }
           
            protected ImageIcon createImageIcon(String path,
                String description) {
                java.net.URL imgURL = getClass().getResource(path);
                if (imgURL != null) {
                return new ImageIcon(imgURL, description);
                } else {
                System.out.println("Bild konnte nicht gefunden werden: " + path);
                return null;
                }
            }
           
            public class meinWindowListener extends WindowAdapter{
                      public void windowClosing(WindowEvent a){
                        System.exit(0);
                      }
                    }
           
            public void createGUI(){
                    /*Erstellt ein kleines Fenster mit einem JFrame*/
                   
                    JFrame frame = new JFrame();
                    setBackground(Color.blue);
                    setSize(400,400);
                    setLocation(200,200);
                    setDefaultCloseOperation(WindowConstants.DO_NOTHING_ON_CLOSE);
                    setVisible(true);
                   
                    /*Erstelle ein Panel um Text und Buttons hinzuzufügen!*/
                   
                    JPanel panel = new JPanel();
                    add(panel);
                    panel.setLayout(new FlowLayout());
                    JLabel label = new JLabel("Hallo");
                    panel.add(label);
            //      panel.add(icon);
                    TextField f = new TextField(10);
                    panel.add(f);
                    ausgabe.setSize(50,100);
                    ausgabe.setLocation(50,50);
                    panel.add(button);
                    button.setSize(100,25);
                    button.setLocation(100,400);
                    panel.add(eingabe);
    //              eingabe.set
                   
                    panel.setVisible(true);
                    addWindowListener(new meinWindowListener());
                    button.addActionListener(this);
                    ausgabe.addActionListener(this);
                   
            }
     
    }
    • Ich möchte ja eine ComboBox anzeigen, aber bei mir klappt das nicht. Hier mal mein Versuch:
    Code:
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;
    import java.awt.event.WindowAdapter;
    import java.awt.event.WindowEvent;
     
    import javax.swing.JComboBox;
    import javax.swing.JFrame;
    import javax.swing.JPanel;
    import javax.swing.WindowConstants;
     
     
    public class combobox extends JFrame implements ActionListener{
     
            String[] schrift = { "Arial", "Serif", "Sansserif", "Monospaced" };
            JComboBox liste = new JComboBox(schrift);
           
            public combobox() {
                   
            }
     
            public void createWind() {
                    setSize(500,600);
                    setLocation(100,100);
                    setResizable(false);
                    setVisible(true);
            setDefaultCloseOperation(WindowConstants.DO_NOTHING_ON_CLOSE);
            JPanel panel = new JPanel();
            liste.setSelectedIndex(2);
            liste.addActionListener(this);
            addWindowListener(new meinWindowListener());
            panel.add(liste);
            panel.setVisible(true);
            }
           
            public class meinWindowListener extends WindowAdapter{
            public void windowClosing(WindowEvent a){
              System.exit(0);
            }
          }
           
            public void actionPerformed(ActionEvent e) {
                   
                    if (e.getSource() == this.liste) {
                            String schrift = (String)liste.getSelectedItem();
                    }
            }
           
            public static void main(String[] args) {
                    combobox box = new combobox();
     
                    box.createWind();
            }
     
    }
    Ich hätte dann noch allgemeine Fragen:
    • Ich möchte Frames anzeigen lassen (also wenn z.B. ein Charakter läuft). Welche Methode wäre geeignet? Es ist mir egal ob ich es als gif abspielen lasse oder ein paar png Bilder der Reihe nach anzeige, es sollte einfach aussehen als könne der Spieler laufen. ^^"

    • Wie realisiere ich am besten Pop-Ups?

    MfG SurviveX

  2. Anzeige

    JAVA Probleme und Fragen

    Schau dir mal diesen Bereich an. Dort ist für jeden was dabei!

Ähnliche Themen


  1. Probleme mit Java Hamster Simulator (MAC): Hallo zusammen, ich habe Probleme mit dem Hamster Simulator auf meinem Macbook Pro. Habe dies hier in die Programmierzeile eingegeben: void...

  2. M3 Real Probleme & Fragen: Hallo, ich habe vor kurzem einen DS erworben und jetzt den M3 DS Real Adapter + Vibrations Pack Micro SD Version. Jetzt ist meine Frage was ich...

  3. 2 Fragen: 1. Frage zu Java-Applets und 2. Frage zu Verschalung: Hi!!! Zur 1. Frage: Könntet ihr mir noch ma sagen, wann und wieso ich ein Java-Applet signieren lassen muss? Ich weis zwar eins zwei punkte, wieso...

  4. Wii Fragen und Probleme :-(: Hallo Jungs, also ich hab jetzt seit circa einer Woche miene Wii. Hab auch immer mal ein bisschen gezockt, wies die Zeit halt zulies... Eben hab...

  5. Massenweise Probleme und Fragen...: Hi erstmal, also mein pc ist jetzt ca 1/2 Jahr alt und bereitet mir nur Probleme ... aber bisher das größte ungelöste: Er startet einfach nicht....

Besucher kamen mit folgenden Begriffen auf die Seite

schserof