Salvador
Hallo,
ich brauche das hier.
Aufgabe:
Es soll mit einem Programm eine Manuelle LS Nummer erstellt werden.
Aufbau der Nummern: (Zeichen M + 7 numerische Zeichen) M0000000
Die erstellte Nummer soll entweder:
- automatisch in die Zwischenablage Kopiert werden.
- oder an die aktuelle Position des Cursors.
Die Nummer soll Fortlaufend sein, und gespeichert werden.
Es darf keine Nummer zweimal vergeben werden.
Programm soll gestartet werden:
- mit Tastenkombination oder
- kleine, im Vordergrund Befindende Schaltfläche oder
- Kontextmenü der Maus
Da ich mich noch sehr wenig mit Java beschäftigt habe, und im Moment auch
nicht all zu viel Zeit ist wäre es super, wenn sich dem Problem einer annehmen
könnte. So von der Logik her verstehe ich es und den Code lesen, wenn ich ihn
sehe bekomme ich bestimmt auch hin, nur ihn selber zu verfassen ist im Moment
noch ein Ding der unmöglichkeit.
--
*verschoben
- Zeronet
milahu
was jetzt: java oder javascript?
Salvador
In Java. Ich hatte mich mal in Eclipse ran gesetzt aber zu einem
gescheiten Ergebnis bin ich leider nicht gekommen.
milahu
| Zitat: |
Original von Salvador
In Java. |
dann bist du im falschen forum
was ist denn nun konkret das problem?
bekommst das GUI nicht hin?
hängt's an dem auslesen und speichern der datenbank?
schaffst du's nicht, die nummer zu generieren?
...
Salvador
Ich habs dann vorhin auch gemerkt wo du mich nach JavaScript gefragt hast. Irgendwie hab ich hier im Forum rumgelesen und dann den Beitrag ausversehen ins
falsche abteil gepostet. Mein Problem ist das komplette! *grins* Den Rechner zu basteln und dann das mit der Ausgabe!
Salvador
Hallo,
wie sieht es aus kann mir keiner Helfen?
.iCode
Vielleicht versuchst du dich einfach mal dran und wenn du Probleme hast, dann kannst du hier eine konkrete Frage stellen.
Lass die GUI am Anfang erstmal weg und kümmer dich nur um die Generierung und das abspeichern. Danach kannste dich dann um die GUI kümmern.
Salvador
Hallo,
also mein erstes Problem ist es die Rechenfunktion zu erstellen, hab auch schon mal rumgesucht ob ich irgendwie einen ähnlichen Code finde den ich für meine Bedürfnisse umbasteln kann. Bis überhaupt zur Speicherung oder der GUI bin ich nicht vorgedrungen, aber ich denke mir, wenn ich nichtmal den einfachen Rechner hinbekomme werde ich wohl den Rest noch weniger zusammen bringen.
Von der Logik her den Rechner zu bauen kann ich mir noch vorstellen. Mein Problem ist ich kenne mich zu wenig mit dem Synthax aus, und weiß nicht wie ich es schreiben soll.
milahu
wozu denn bitte eine rechenfunktion?
willst du einen taschenrechner bauen oder die aufgabe lösen?
| Zitat: |
Original von Salvador
Aufgabe:
... |
aufgabe? das klingt doch verdächtig nach schule/studium...?
Donut
zum abfangen von tastatureingaben benutze den KeyListener:
http://java.sun.com/j2se/1.5.0/docs/api/...eyListener.html
fürs Einfügen:
http://java.sun.com/j2se/1.5.0/docs/api/...tEditorKit.html
ansonsten sollte das programm kein problem sein. Du setzt bei programmstart eine Variable, die in einer methode hochgezählt wird. Je nachdem wann du die nummer raufgezählt haben wiilst, tust du's mit der methode halt.
und das M bekommst du ganz einfach davor, indem du dem String 'M' die variable anhängst, praktischerweise geht das sogar mit einem '+', also
int MeineVariable = 1;
String MeineNummer[i] = 'M' + MeineVariable;
und fertig
Salvador
Hallo,
wie kann ich eine Textdatei anlegen, und wie speichere ich darin dann die Werte ab? Die .txt Datei soll in C:\ liegen. Die Zahl soll automatisch beim Druck einer Tastenkombination ausgelesen werden, in die zwischenablage kopiert und dann über Einfügen wieder ausgegeben werden. Danach muss die nächst höhere Zahl generiert werden und automatisch über die andere Nummer gespeichert.
@Donut: Danke schonmal für deine Tipps. Den KeyListener benötige ich damit das mit der Tastenkombination funktioniert. Ist das richtig?
Salvador
Hallo,
also das mit dem lesen und schreiben in ein File klappt mittlerweile. *freu*
Aber wie meinst du: Du setzt bei Programmstart eine Variable, die in einer Methode hochgezählt wird. Je nachdem wann du die Nummer raufgezählt haben wiilst, tust du's mit der Methode halt.
Wenn ich bei mir das:
int MeineVariable = 1;
String MeineNummer[i] = 'M' + MeineVariable;
eintrage kommt immer eine Fehlermeldung:
Syntax error on token "i", delete this token
Was mach ich da falsch?
milahu
| Zitat: |
Original von Salvador
Was mach ich da falsch? |
du vermischst die initialiserung mit der zuweisung.
| Zitat: |
| Aber wie meinst du: ... |
was kann man daran bloß nicht verstehen?
| php: |
1:
2:
3:
4:
5:
|
<?php static int nummer = 0;
static void rauf() {
nummer += 1;
} ?> |
|
Donut
genau das wäre die Methode um die vari raufzuzählen.
Die Methode um den eine (neue) Seriennummer zu erzeugen wäre:
einmal muss der Array irgendwo inistalisiert werden. WEnn du also max 100 nummer haben willlst:
| code: |
1:
|
String[] MeineNummer = new String[100]; |
|
Und dann die eigentliche Methode:
| code: |
1:
2:
3:
4:
|
public void getNummer()
{
MeineNummer[nummer]= "M" + nummer;
} |
|
aber das macht eigentlich kenen sinn, den String nochmal extra zu speichern, wenn du nich weiter drauf operierst oder ihn so abspeicherst (was wiederum nicht sinvoll wäre)
besser:
einfach m dranhängen, wenn mans braucht (bei ausgabe o.ä.):
| code: |
1:
2:
3:
4:
|
public String getNummer()
{
return "M"+nummer;
} |
|
nur wenn du noch etwas damit anstellst sollte man ihn speichern...
Salvador
Hallo, erstmal
vielen Dank an euch das ihr mir helft!!!
@ Donut: bis lang waren deine Tipps echt hilfreich.
Aber nu tun sich neue Probleme auf.
- Wenn das Programm ausgeführt wird soll der Wert in die Zwischenablage kopiert werden.
- Wie mache ich daraus eine .exe Datei oder zumindest so etwas, dass ich das Programm einfach ausführen kann ohne Eclipse oder irgendetwas öffnen zu müssen?
Donut
einfügen, kopieren und ausschneiden ist wirklich sehr einfach:
http://java.sun.com/j2se/1.5.0/docs/api/...tEditorKit.html
fürs kopieren also einfach
| code: |
1:
2:
3:
|
JTextArea Textfeld = new JTextArea();
befehl = new hashtable();
befehl.put(Textfeld.getAction().getValue(Action.NAME), Textfeld.getAction()); |
|
und aufrufen mit
| code: |
1:
|
befehl.get(DefaultEditorKit.copyAction) |
|
welches in eine Actionlistener eingebunden werden muss. Logisch - liefer ja eine Object zurück, welches in eine Action konvertiert werden kann.
Eine .exe draus zu machen wäre nicht sooo sinnvoll - dann würde das Programm nur auf windows laufen. Wenn dir das nichts ausmacht:
http://www.zdnet.de/downloads/prg/9/0/en10044390-wc.html
Wenn doch, erstell einfach ein .jar-Programmarchiv. Die lässt sich auch mit Doppelklick starten. Wenn du nicht weiß wie das geht, einfach mal googeln.
Salvador
Also das Prog. soll auch nur auf Windows laufen. Von daher ist das schon OK.
Nun schau ma mal weiter was sich tut. Danke.
Salvador
Hallo,
was meinst du mit Actionlistener und was ist mit Action konvertieren?
Hab Grad im I-Net etwas geschaut aber so wirklich hab ich da nix draus zustande gebracht.
Donut
irgendwo musst du ja festlegen, wann er es kopieren soll.
Das kann z.b. beim drücken eines Buttons sein. dann musst du mit
| code: |
1:
|
button1.addActionListener( (Action) (befehl.get(DefaultEditorKit.copyAction)); |
|
das kopieren auslösen