• 06.06.2024, 09:11
  • Register
  • Login
  • You are not logged in.

 

Dear visitor, welcome to Aqua Computer Forum. If this is your first visit here, please read the Help. It explains how this page works. You must be registered before you can use all the page's features. Please use the registration form, to register here or read more information about the registration process. If you are already registered, please login here.

Kalendergenerator mit Java in GUI

Wednesday, January 11th 2006, 10:56am

Hello

Wir machen zurzeit einen Kalender in Informatik. Ich habe aber keinen Plan wie ich das in ein Gitter oder so einbringen soll!? ??? Mit den Monaten und den Wochentagen. Monate auf der y Achse, und Wochentage auf der x Achse.
Ich bin nur soweit gekommen, dass er mir berechnet ob es ein Schaltjahr oder nicht ist, allerdings will das bei mir nicht so richtig funktionieren....findet ihr den Fehler? Und Könnt ihr mir sagen was ich machen muss um das ganze in einen grafisch nette Oberfläche zu verpacken, und wie ich die Wochentage passend zu den Monaten, besodners Februar, angebe?

Er sagt mir: Java.lang.NoClassDefFoundError! was bedeutet das?

http://theo.thg.goe.ni.schule.de/~josse1…rgenerator.java

plz help...



MFG Jogibär

Re: Kalendergenerator mit Java in GUI

Wednesday, January 11th 2006, 12:29pm

Quoted

Er sagt mir: Java.lang.NoClassDefFoundError! was bedeutet das?

Hab ich hier nicht.

Source code

1
2
javac Kalendergenerator.java
java Kalendergenerator



Wenn ich nichts eingebe und auf den Button drücke, bekomme ich eine Exception. Daher statt

Source code

1
2
eingabe_text = eingabe1.getText();
eingabe = Integer.parseInt(eingabe_text);

besser

Source code

1
2
3
4
5
6
try {
    eingabe = Integer.parseInt(eingabe1.getText());
} catch (NumberFormatException e) {
    System.err.println("Es wurde keine Ganzzahl eingegeben.");
    return;
}



Einen hübschen Kalender mit Tabelle zu machen, wird schon etwas umfangreicher/schwieriger. Oder schwebt dir sowas in Textform vor?

Source code

1
2
3
4
5
6
7
8
yogi@loplop:~$ cal
    January 2006
Su Mo Tu We Th Fr Sa
 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

In beiden Fällen musst du in einer Schleife alle Tage eines Monats durchlaufen und nach jeweils sieben Tagen eine neue Zeile beginnen. Wenn du dafür auf etwas aus der Java-API zurückgreifst (grad keine Lust zu suchen), erhältst du zu einem Datum bestimmt auch den passenden Wochentag. Machst du das vorher mit dem ersten Tag des Monats schon, kannst du ja ersehen, in welcher Spalte du anfangen musst.

Re: Kalendergenerator mit Java in GUI

Wednesday, January 11th 2006, 12:29pm

Quoted from "Jogibär"

Er sagt mir: Java.lang.NoClassDefFoundError! was bedeutet das?


no class definition found.
das heißt das er eine klasse nicht finden kann, entweder weil sie garnicht existiert, der name falsch geschrieben ist oder weil sie nicht im classpath ist.

---
grafische oberfläche:
ein kalender-element bietet swing nicht direkt an.
aber wenn man nach "java swing calendar" sucht findet sich schon einiges.

allgemein zu oberflächen in java hilft das swing tutorial sehr gut:
http://java.sun.com/docs/books/tutorial/uiswing/index.html

und speziell für einen kalender finde ich ganz hilfreich:
http://java.sun.com/docs/books/tutorial/uiswing/layout/grid.html

apropos kalender und wochentage usw, da ist java gut ausgestattet.

schau mal in der api: http://java.sun.com/j2se/1.5.0/docs/api/index.html nach:
GregorianCalendar.isLeapYear(int), das sollte schonmal helfen wenn es ums Schaltjahr geht.

Wenn ich das auf die schnelle richtig verstanden habe könnte Calendar.getActualMaximum(Calendar.DAY_OF_MONTH) die anzahl der tage eines monats zurückgeben.
Gott hat die Welt ja nur in sieben Tagen erschaffen können, weil es keine installierte Basis gab.

Re: Kalendergenerator mit Java in GUI

Wednesday, January 11th 2006, 2:00pm

ok, vielen Dank leute, werd mich heute nachmittag gleich mal dran setzen :) Wenn ich denn endlich Schule aus hab :-/.....

Das mit Java-API wäre doch etwas kompliziert glaub ich einzubringen, da das über meine geringen Kenntnisse hinausragt :-/
Und ich denk das ist auch nicht das Ziel der Aufgabe ;)

Re: Kalendergenerator mit Java in GUI

Wednesday, January 11th 2006, 2:22pm

nunja, ich bin programmierer, also faul, da bastel ich nix was es schon fertig gibt. ;)

Source code

1
2
3
GregorianCalendar now = new GregorianCalendar();
            boolean leapYear = now.isLeapYear(now.get(Calendar.YEAR));
            System.out.println(leapYear);

ist doch nicht schwer rauszufinden ob das aktuelle jahr ein schaltjahr ist. ;)

genauso für jedes andere datum.

zb um aus deinem eingabefeld ein datum zu erzeugen:

Source code

1
2
3
4
5
6
7
8
9
10
11
12
13
DateFormat df = DateFormat.getInstance();
Date from;

// transform the text form the textfield to a date
String fromDate = eingabe1.getText();
try
{
      from = df.parse(fromDate);
}
catch (ParseException e1) // the user didn't give in a valid date
{
      from = new Date(); // default date equals now
}


nun das ganze in den kalender von eben:

Source code

1
2
3
4
GregorianCalendar now = new GregorianCalendar();
now.setTime(from);
boolean leapYear = now.isLeapYear(now.get(Calendar.YEAR));
System.out.println(leapYear);


das machts doch recht einfach, oder seh das nur ich so? ;D
Gott hat die Welt ja nur in sieben Tagen erschaffen können, weil es keine installierte Basis gab.

Re: Kalendergenerator mit Java in GUI

Wednesday, January 11th 2006, 2:59pm

Quoted from "Jogibär"

Das mit Java-API wäre doch etwas kompliziert glaub ich einzubringen, da das über meine geringen Kenntnisse hinausragt :-/
Und ich denk das ist auch nicht das Ziel der Aufgabe ;)

Man kommt gar nicht drum herum, in Java ohne die Benutzung der API zu programmieren... und der AWT-Teil kommt ja auch irgendwo her.

Re: Kalendergenerator mit Java in GUI

Wednesday, January 11th 2006, 3:51pm

aso, dann hab ich das falsch verstanden ergo fehlt mir das Wissen ::)

Re: Kalendergenerator mit Java in GUI

Wednesday, January 11th 2006, 3:59pm

Sag mal welchen Editor benutzt du für Java, Yogi? Mein Joe zickt nämlich rum, also zeigt die Compilieren taste ncht an!? In der Schule ging das einwandfrei... ???

Re: Kalendergenerator mit Java in GUI

Wednesday, January 11th 2006, 4:48pm

Quoted from "Jogibär"

Sag mal welchen Editor benutzt du für Java, Yogi? Mein Joe zickt nämlich rum, also zeigt die Compilieren taste ncht an!? In der Schule ging das einwandfrei... ???

Würd dir zu eclipse raten.
Ist nen sehr guter Editor mit dem ich selbst arbeite

MfG TrOuble

Re: Kalendergenerator mit Java in GUI

Wednesday, January 11th 2006, 6:20pm

thx :D

P.S. 103MB :o

Re: Kalendergenerator mit Java in GUI

Wednesday, January 11th 2006, 6:45pm

du musst joe wahrscheinlich erstmal beibringen wo der java compiler ist, entweder über eine umgebungsvariable oder im programm selber, ich kenne den editor nicht.

ich benutze auch eclipse.
Gott hat die Welt ja nur in sieben Tagen erschaffen können, weil es keine installierte Basis gab.

Re: Kalendergenerator mit Java in GUI

Wednesday, January 11th 2006, 7:38pm

du hast recht, nur leider finde ich die Dateien die er haben will nicht ???
Habe im Java Programmordner geguckt, und im Java Ordner im Windows Ordner, bei beiden nix zu finden von einer javac oder einer AppletViewer datei. Lediglich den Interpreter hat er selbstständig gefunden java.exe

Habe die ganz normale Java Runtime installiert (java Platform Standard) SDK :P :-[ ???

Re: Kalendergenerator mit Java in GUI

Wednesday, January 11th 2006, 8:42pm

hast du jetzt runtimer oder sdk installiert?

bei der jre - java runtime edition ist javac usw nicht dabei. nur beim sdk - software development kit.

das ist aber meist in einem anderen ordner installiert als das jre, beide aber eigentlich unter c:/programme/java (wenn es windows ist).

hast du mal über alle dateien auf der festplatte gesucht?
sonst einfach mal neuinstallieren (also das java sdk, nciht windows).
Gott hat die Welt ja nur in sieben Tagen erschaffen können, weil es keine installierte Basis gab.

Re: Kalendergenerator mit Java in GUI

Thursday, January 12th 2006, 7:02pm

Quoted

In beiden Fällen musst du in einer Schleife alle Tage eines Monats durchlaufen und nach jeweils sieben Tagen eine neue Zeile beginnen. Wenn du dafür auf etwas aus der Java-API zurückgreifst (grad keine Lust zu suchen), erhältst du zu einem Datum bestimmt auch den passenden Wochentag. Machst du das vorher mit dem ersten Tag des Monats schon, kannst du ja ersehen, in welcher Spalte du anfangen musst.


verdammt, ich hab keine Ahnung wie ich das anstellen soll ???
soll dann jeder Monat eine eigene Schleife haben außer Februar?
Muss das morgen abgeben :-/

Hat nicht jemand Lust und Zeit mir das zu ergänzen? :-X

Re: Kalendergenerator mit Java in GUI

Thursday, January 12th 2006, 7:19pm

wie immer: das hat schon jemand gemacht:

http://examples.oreilly.de/german_examples/javacook2ger/

irgendwo in der jar datei gibts ein programm namens CalendarPage, das gibt einen monat nett formatiert aus, bzw gibt anhaltspunkte fürs selberschreiben.

dadrum muss dann nur noch eine schleife über alle monate des jahres.

das beispiel ist übrigens aus dem java-kochbuch:
http://examples.oreilly.de/german_examples/javacook2ger/
Gott hat die Welt ja nur in sieben Tagen erschaffen können, weil es keine installierte Basis gab.

Re: Kalendergenerator mit Java in GUI

Thursday, January 12th 2006, 10:37pm

aber das soll ja auch kein gregorianischer Kalender werden :-/
eher in diesem Stil hier:
http://www.hotel-hillesheim.de/kalender.htm

Edit: Habe jetzt Java SDK installiert, allerdings sagt er jedes mal, dass das eingegebene Jahr kein Schaltjahr ist, auch bei 2004, und das ist ein Schaltjahr!? :-/

Re: Kalendergenerator mit Java in GUI

Saturday, January 14th 2006, 2:27pm

Hab noch ne Frage: Wie richte ich ein Hintergrundbild in Java ein? Ist das möglich das mit dem Java Programm zu verknüpfen, ohne das aufs Internet zugegriffen werden muss?
Ansonsten, wie geht es auch wenn er aufs Internet zugreifen muss?

Re: Kalendergenerator mit Java in GUI

Saturday, January 14th 2006, 3:44pm

also wenn du meinst ob man ein bild auf der festplatte einbinden kann: natürlich.

für ein hintergrundbild muss man afaik ein layered pane einbauen:
http://java.sun.com/docs/books/tutorial/…ayeredpane.html
hab ich aber noch nciht ausprobiert.

der gregorianische kalender sollte für unsere breitengrade schon richtig sein, dieser kennt auch das schaltjahr, andere kalender nicht unbedingt.

bei mir gibt dieser codeschnippsel true aus:

Source code

1
2
3
GregorianCalendar now = new GregorianCalendar();
             boolean leapYear = now.isLeapYear(2004);
             System.out.println(leapYear);

vielleicht übergibts du da nicht 2004 weil die eingabe nicht richtig geparst wird oder sowas?
Gott hat die Welt ja nur in sieben Tagen erschaffen können, weil es keine installierte Basis gab.

Re: Kalendergenerator mit Java in GUI

Saturday, January 14th 2006, 6:38pm

mhh...gibts da nicht was smarteres?
Also wie bei Buttons oder Txtfeldern.

man kann ja einfach sagen:

Source code

1
setBackground(Color.blue);


Dann hab ich im gesamten Fenster einen blauen Hintergrund...

kann man denn da nicht auch einfach ein Bild statt der Farbe verwenden, ohne ein Label hinzufügen zu müssen?

Re: Kalendergenerator mit Java in GUI

Saturday, January 14th 2006, 11:39pm

naja, eine component kann standardmäßig nicht mit images umgehen.

andere methode wäre diese:
http://www.jguru.com/faq/view.jsp?EID=9691
vielleicht einfacher.
Gott hat die Welt ja nur in sieben Tagen erschaffen können, weil es keine installierte Basis gab.