Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder ein alternativer Browser verwenden.
Ich habe ein Problem da ich Tutorials habe und die leider alle auf Version 1.5 aber ich habe 1.6 und jetzt geht der meiste teil nicht wie mach ich ein Buttom mit Position ändern und Größe und der zu einer class wächselt?
Und noch net Frage wie mach ich die Farbe von einem Text?
Du meinst wohl einen Button, oder? Kommt jetzt aber auch ganz drauf an, ob du dich in SWT bewegst oder in SWING oder wie auch immer. So ganz ohne Infos kann man nur rumraten. Und was du mit "der zu einer class wächselt" meinst, kann ich mir nicht so wirklich vorstellen.
Ja kommt jetzt auch wieder drauf an, welche Komponente du verwendest. Solls der Text auf dem Button sein oder von einem Label oder... da gibts dutzende verschiedene Möglichkeiten, was du meinen könntest.
Du meinst wohl einen Button, oder? Kommt jetzt aber auch ganz drauf an, ob du dich in SWT bewegst oder in SWING oder wie auch immer. So ganz ohne Infos kann man nur rumraten. Und was du mit "der zu einer class wächselt" meinst, kann ich mir nicht so wirklich vorstellen.
Ja kommt jetzt auch wieder drauf an, welche Komponente du verwendest. Solls der Text auf dem Button sein oder von einem Label oder... da gibts dutzende verschiedene Möglichkeiten, was du meinen könntest.
2.Ja meine ich also wein JButtom den ich mit der größe anpassen kann und die Position auch und wenn man ihn anklicklt soll er zu einer anderen *Edit lesen wechseln.
game.java:26: cannot find symbol
symbol : variable login
location: class game
login = new JButton("Zum Login");
^
game.java:27: cannot find symbol
symbol : variable login
location: class game
login.setSize(88, 24);
^
game.java:28: cannot find symbol
symbol : variable login
location: class game
login.setBorderPainted(false);
^
game.java:29: cannot find symbol
symbol : variable Login
location: class game
oMainWindow.add(Login);
^
4 errors
und der Script
Java:
/*
Programm: game.java
Version: 1
*/
import java.awt.Font;
import javax.swing.*;
public class game
{
public static void main(String args[])
{
JFrame oMainWindow=new JFrame("World of War");
oMainWindow.setSize(1280,768);
oMainWindow.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
oMainWindow.setVisible(true);
//oMainWindow.activeCaptionText();
JLabel hallo=new JLabel("World of War");
hallo.setHorizontalAlignment(JLabel.CENTER);
hallo.setVerticalAlignment(JLabel.TOP);
//hallo.setForeground( Color.BLUE );
Font font = new Font("6809 Chargen", Font.BOLD + Font.ITALIC , 60);
hallo.setFont(font);
hallo.setVisible(true);
oMainWindow.add(hallo);
login = new JButton("Zum Login");
login.setSize(88, 24);
login.setBorderPainted(false);
oMainWindow.add(Login);
JComboBox Server=new JComboBox();
Server.addItem("Server1 - Deutsch");
Server.addItem("Server2 - English");
Server.addItem("Server3 - Deutsch");
//Soll vom Buttom ausgeführt oMainWindow.add(Server);
}
}
und noch ein Befehl soll beim Button login hinzukommen nähmlich dass er die Funktion oMainWindow.add(Server); ausführt.
Danke jetzt kommen schonmal keine Fehler mehr aber der Button führt noch kein anderen Befehl aus und irgendwie ist er auch das ganze Fenster Groß und somit sehe ich die Überschrift nicht.
auch nicht sehr verwunderlich wenn du [c]oMainWindow.setSize(1280,768);[/c] setzt... das scheint ja die komplette Aufloesung zu sein... mach mal 600x400 oder was auch immer - jdf kleiner
Liegt am standard-Layout des JFrames. (BorderLayout)
Les dir mal ein bisschen was über Layoutmanager durch, dann weißt du wie man Componenten in Java richtig platziert bzw. die Größe definiert
Gleich vllt.
Ich habe geschauen und zumteil herausgefunden wie es geht aber irgedwo liegt mein Fehler
[Java]
/*
Programm: game.java
Version: 1
*/
import java.awt.Font;
import javax.swing.*;
public class game
{
public static void main(String args[])
{
JFrame oMainWindow=new JFrame("World of War");
oMainWindow.setSize(1280,768);
oMainWindow.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
oMainWindow.setVisible(true);
//oMainWindow.activeCaptionText();
JLabel hallo=new JLabel("World of War");
hallo.setHorizontalAlignment(JLabel.CENTER);
hallo.setVerticalAlignment(JLabel.TOP);
//hallo.setForeground( Color.BLUE );
Font font = new Font("6809 Chargen", Font.BOLD + Font.ITALIC , 60);
hallo.setFont(font);
hallo.setVisible(true);
oMainWindow.add(hallo);
JButton login = new JButton("Zum Login");
login.setSize(88, 24);
oMainWindow.add(login);
JComboBox Server=new JComboBox();
Server.addItem("Server1 - Deutsch");
Server.addItem("Server2 - English");
Server.addItem("Server3 - Deutsch");
//Soll vom Buttom ausgeführt oMainWindow.add(Server);
login.AddActionListener(oMainWindow.add(Server));
}
}
[/code]
und der Error:
Code:
game.java:34: cannot find symbol
symbol : method AddActionListener(java.awt.Component)
location: class javax.swing.JButton
login.AddActionListener(oMainWindow.add(Server));
^
1 error
Erstens eine falscher Methodenname. Es heisst deinObjekt.addActionListener(). Zweitens musst du noch das Package java.awt.event.ActionListener importieren.
Mein Tipp:
Erstmal ein Buch zur Hand nehmen und fleissig darin lesen. Oder das gratis Onlinebuch von Galileo lesen.
STOP!
Du machst hier gerade einen gaaaanz groben Fehler. Wenn man Dir ein Stichwort zuschmeisst, dann schlag es nach und lies es Dir durch (immer noch in der Insel oder im Javabuch). Nicht einfach irgendwas eintippen und hoffen, dass es funktioniert. Lesen, begreifen, dann programmieren. Sonst haben wir hier ganz schnell wieder einen Developer_X.
Und nimm es jetzt schon einmal hin: Programmieren lernt man nicht in einer Woche (und Java nicht in 28 Tagen, auch wenn ein Buch das Gegenteil behauptet).
Gruß FatFire
PS: Java ist Case-Sensitiv, also auf Groß- und Kleinschreibung achten.
Edit: Maaan, geht ja so schnell wie in einem Chat hier ;(
Habe ich durch gelesen!!! Nur leider habe ich nur ein example auf Englisch gefunden und ich bin erst in der 6sten. Das heißt das ich Englisch noch net gut kann.
/*
Programm: game.java
Version: 1
*/
import java.awt.event.*;
import java.awt.*;
import javax.swing.*;
public class game
{
public static void main(String args[])
{
JFrame oMainWindow=new JFrame("World of War");
oMainWindow.setSize(1280,768);
oMainWindow.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
oMainWindow.setVisible(true);
//oMainWindow.activeCaptionText();
JLabel hallo=new JLabel("World of War");
hallo.setHorizontalAlignment(JLabel.CENTER);
hallo.setVerticalAlignment(JLabel.TOP);
//hallo.setForeground( Color.BLUE );
Font font = new Font("6809 Chargen", Font.BOLD + Font.ITALIC , 60);
hallo.setFont(font);
hallo.setVisible(true);
oMainWindow.add(hallo);
JButton login = new JButton("Zum Login");
login.setSize(88, 24);
oMainWindow.add(login);
JComboBox Server=new JComboBox();
Server.addItem("Server1 - Deutsch");
Server.addItem("Server2 - English");
Server.addItem("Server3 - Deutsch");
//Soll vom Buttom ausgeführt oMainWindow.add(Server);
login.addActionListener(oMainWindow.add(Server));
}
}
Konsole:
Code:
game.java:35: addActionListener(java.awt.event.ActionListener) in javax.swing.AbstractButton cannot be applied to (java.awt.Component)
login.addActionListener(oMainWindow.add(Server));
^
1 error
Ich seh in deinem Beispiel auf den ersten blick mehrere Fehler, willst du nicht erst aus Galileo Computing :: Java ist auch eine Insel (8. Auflage) oä lesen? Ich erkenne, dass du überhaupt keinen Plan hast, wie was gemacht werden muss, was Methoden und Klassen sind, wie Listener funktionieren, was Scopes sind etc...
Danke das ihr mich nicht helft..... Braucht ihr auch nicht ..... Doch..... ich wette ich kann nooch mehr andere Sprachen womit ich mein Ziel machen kann aber ich wollte eigentlich auc mal Java ausprobieren dann mach ich mal mit allegro weiter....Oder doch nicht.... Wenn mir keiner hilft.... dann mach ich das mit Allegro ..... wenn mir doch einer hilft ..... dann mach ichs mit Java xD
Danke das ihr mich nicht helft..... Braucht ihr auch nicht ..... Doch..... ich wette ich kann nooch mehr andere Sprachen womit ich mein Ziel machen kann aber ich wollte eigentlich auc mal Java ausprobieren dann mach ich mal mit allegro weiter....Oder doch nicht.... Wenn mir keiner hilft.... dann mach ich das mit Allegro ..... wenn mir doch einer hilft ..... dann mach ichs mit Java xD
Ist denn mein Link keine Hilfe? Müssen wir dir Code vorkauen, wenn du die Probleme deines Programms nicht verstehst? Klar könnte ich dir hier in ein paar Minuten ein funktionierendes Programm schreiben. Aber das kostet mich nur Zeit und dir hat es nichts gebracht. Nur weil du eine andere Sprache kannst, kannst du noch lange kein Java.
In welcher Sprache programmierst du mit Allegro? In C? Dies ist keine objektorientierte Sprache und darum ganz etwas anderes. Aber deinen Fehler mit dem Scope nach bist du auch noch nicht wirklich fit für andere Sprachen, oder verwendest du überall globale Variablen?
Ich will dich hier weder zur Schnecke machen noch dir nicht helfen, aber les dir doch zuerst die ersten paar Kapitel der Insel durch.
Danke das ihr mich nicht helft..... Braucht ihr auch nicht ..... Doch..... ich wette ich kann nooch mehr andere Sprachen womit ich mein Ziel machen kann aber ich wollte eigentlich auc mal Java ausprobieren dann mach ich mal mit allegro weiter....Oder doch nicht.... Wenn mir keiner hilft.... dann mach ich das mit Allegro ..... wenn mir doch einer hilft ..... dann mach ichs mit Java xD
Verdammt der Teil ist keine hilfe ich habe immer noch drei problem nr. eins das da oben nr2. das der Button die Ganze Fläche Groß ist nr3.Und das er nicht wechselt.
Zu 1. Welches Problem "da oben"?
Wenn du "Leider kommt der Fehler das er die oMainWindow nicht findet(Z.39)" meinst, dann: Sichtbarkeit und Gültigkeitsbereich
package dumb;
import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.WindowConstants;
public class Game { // Erster Buchstabe einse Klassennamens sollte groß geschrieben sein
public static void main(String args[]) {
final JFrame oMainWindow = new JFrame("World of War"); // muss "final" sein, damit es im ActionListener benutzt werden kann.
oMainWindow.setSize(500, 200);
oMainWindow.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
JLabel hallo = new JLabel("World of War");
hallo.setHorizontalAlignment(JLabel.CENTER);
hallo.setVerticalAlignment(JLabel.TOP);
hallo.setFont(new Font("Flubber", Font.BOLD + Font.ITALIC, 60));
// hallo.setVisible(true); braucht nicht extra aufgerufen werden
oMainWindow.add(hallo,BorderLayout.NORTH); // der zweite Parameter gibt die Position der Componente im Fenster an. Für weitere Infos les dir was ber LayoutManager durch.
JButton login = new JButton("Zum Login");
login.setPreferredSize(new Dimension(17, 17));
login.setBorderPainted(false);
login.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent login) {
JComboBox Server = new JComboBox();
Server.addItem("Server1 - Deutsch");
Server.addItem("Server2 - English");
Server.addItem("Server3 - Deutsch");
oMainWindow.add(Server);
}
});
oMainWindow.add(login,BorderLayout.CENTER);
oMainWindow.setVisible(true); // sollte am Schluss aufgerufen werden
}
}
Du kannst es auch mit Sternchen machen. Ich benutz Eclipse, deswegen achte ich gar nicht mehr auf die Importe (einmal Shift-Ctrl-O gedrückt und alles wird automatisch importiert :toll. Benutzt du ne IDE?
Welche Form der Hilfe erwartest du? Es wurde doch alles versucht. Ich verstehe bisher nicht einmal dein Problem. Von was für einem Wechsel sprichst du?
Was soll wann, wie und zu was wechseln? Und es heisst Button, nicht Buttom!
//package dumb;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class game { // Erster Buchstabe einse Klassennamens sollte groß geschrieben sein
public static void main(String args[]) {
final JFrame oMainWindow = new JFrame("World of War"); // muss "final" sein, damit es im ActionListener benutzt werden kann.
oMainWindow.setSize(500, 200);
oMainWindow.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
JLabel hallo = new JLabel("World of War");
hallo.setHorizontalAlignment(JLabel.CENTER);
hallo.setVerticalAlignment(JLabel.TOP);
hallo.setFont(new Font("Flubber", Font.BOLD + Font.ITALIC, 60));
// hallo.setVisible(true); braucht nicht extra aufgerufen werden
oMainWindow.add(hallo,BorderLayout.NORTH);
final JButton login = new JButton("Zum Login");//Wenn man den Button anklick soll er zu
login.setPreferredSize(new Dimension(17, 17));
login.setBorderPainted(false);
login.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent login) { //Wechseln
login.remove(oMainWindow);
JComboBox Server = new JComboBox();
Server.addItem("Server1 - Deutsch");
Server.addItem("Server2 - English");
Server.addItem("Server3 - Deutsch");
oMainWindow.add(Server);
oMainWindow.add(Server,BorderLayout.CENTER);
}
});
oMainWindow.add(login,BorderLayout.CENTER);
oMainWindow.setVisible(true); // sollte am Schluss aufgerufen werden
}
}
Ich befürchte du verstehst den Code nicht, den du geschrieben hast.
Erklär mir doch bitte Schritt für Schritt was folgender Code macht oder machen sollte.
Java:
login.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent login) { //Wechseln
login.remove(oMainWindow);
JComboBox Server = new JComboBox();
Server.addItem("Server1 - Deutsch");
Server.addItem("Server2 - English");
Server.addItem("Server3 - Deutsch");
oMainWindow.add(Server);
oMainWindow.add(Server,BorderLayout.CENTER);
}
});
Da du neu bei Java bist, ist es noch zu früh um mit GUI-Programmierung anzufangen.
Um mit der GUI-Programmierung zu starten, solltest du in folgenden Bereichen Kenntnisse haben:
- MVC
- Threads
- Anonymous inner classes
- Inheritance
- English
Falls dir diese Begriffe nichts sagen, lerne zuerst die Grundlagen.
So die erste Zeile die du Zitirt hast macht das wenn man das Objekt anklick das er das ausführt was in die geschfeifte Klammern steht.
In den Klammern
Löscht er der Button Login
erstellt eine JComboBox mit dem Name Server
Die nächsten drei Zeilen gibt den Inhalt an indiesen Fall: Server 1 - Deutsch, Server2 - Englisch, Server3-Deutsch
Die Letze Zeile kann ich nicht erklären da sie mir zugeworfen wurde aber erraten.
@gizmo
na so wird das wirklich langsam fies,
MVC könnte ich nach 10 Jahren immer noch nicht aus dem Stand hinschreiben, schon gar nicht wollen
was genau aber bei Änderungen der Komponenten in einer Anwendung zur Laufzeit alles geschehen muss,
ist ein größeres Thema, welches man mit Aufwand erlernen muss,
nicht mal eben hier erfragen, während wahrscheinlich die Grundlagen wie Variablendeklarationen noch fehlen