Avatar billede qermital Nybegynder
17. juni 2002 - 00:40 Der er 8 kommentarer og
1 løsning

Læse fra keyboardet uden brug af return.

Avatar billede prom Nybegynder
17. juni 2002 - 10:27 #1
prom
Avatar billede aslan Nybegynder
17. juni 2002 - 10:29 #2
?
Avatar billede qermital Nybegynder
17. juni 2002 - 10:43 #3
Hej Derude



Er der nogle der kan fortælle mig hvordan jeg kan læse input fra tastaturet en char af gangen løbende uden brug af return.



Jeg har en data strøm der kommer løbende fra tastaturet. Jeg skal læse den char efter char for at kunne se efter nogle speciale mønster i data der kommer. Der kan kun komme tal og bokstaver og + tegn som input. 



Er der nogle der har en ide.
Avatar billede qermital Nybegynder
17. juni 2002 - 10:47 #4
Jeg kunne ikke få love til at ligge noget ind i går.
www.eksperten.dk gik ned under indlægget.
men her er så det jeg har brug for at vide håber der er nogle der kan hjælpe.
Avatar billede prom Nybegynder
17. juni 2002 - 11:06 #5
Så skal du til at skrive en KeyListener...

/*
* Swing version.
* From http://java.sun.com/docs/books/tutorial/uiswing\index.html
*
* Modified by prom 17.6.2002
*/

import javax.swing.*;
import java.awt.event.*;
import java.awt.BorderLayout;
import java.awt.Dimension;

public class KeyEventDemo extends JApplet
              implements KeyListener,
                  ActionListener {
  public static void main(String[] kurt){
    JFrame frame = new JFrame("KeyEvent demo");
    KeyEventDemo applet = new KeyEventDemo();
    applet.init();
    applet.start();
    frame.getContentPane().add(applet);
    frame.setSize(800,580);
    frame.show();
  }

  JTextArea displayArea;
  JTextField typingArea;
  static final String newline = "\n";

  public void init() {
    JButton button = new JButton("Clear");
    button.addActionListener(this);

    typingArea = new JTextField(20);
    typingArea.addKeyListener(this);

    displayArea = new JTextArea();
    displayArea.setEditable(false);
    JScrollPane scrollPane = new JScrollPane(displayArea);
    scrollPane.setPreferredSize(new Dimension(375, 125));

    JPanel contentPane = new JPanel();
    contentPane.setLayout(new BorderLayout());
    contentPane.add(typingArea, BorderLayout.NORTH);
    contentPane.add(scrollPane, BorderLayout.CENTER);
    contentPane.add(button, BorderLayout.SOUTH);
    setContentPane(contentPane);
  }

  /** Handle the key typed event from the text field. */
  public void keyTyped(KeyEvent e) {
    displayInfo(e, "KEY TYPED: ");
  }

  /** Handle the key pressed event from the text field. */
  public void keyPressed(KeyEvent e) {
    displayInfo(e, "KEY PRESSED: ");
  }

  /** Handle the key released event from the text field. */
  public void keyReleased(KeyEvent e) {
    displayInfo(e, "KEY RELEASED: ");
  }

  /** Handle the button click. */
  public void actionPerformed(ActionEvent e) {
    //Clear the text components.
    displayArea.setText("");
    typingArea.setText("");

    //Return the focus to the typing area.
    typingArea.requestFocus();
  }

  /*
  * We have to jump through some hoops to avoid
  * trying to print non-printing characters
  * such as Shift.  (Not only do they not print,
  * but if you put them in a String, the characters
  * afterward won't show up in the text area.)
  */
  protected void displayInfo(KeyEvent e, String s){
    String charString, keyCodeString, modString, tmpString;

    char c = e.getKeyChar();
    int keyCode = e.getKeyCode();
    int modifiers = e.getModifiers();

    if (Character.isISOControl(c)) {
      charString = "key character = "
            + "(an unprintable control character)";
    } else {
      charString = "key character = '"
            + c + "'";
    }

    keyCodeString = "key code = " + keyCode
            + " ("
            + KeyEvent.getKeyText(keyCode)
            + ")";

    modString = "modifiers = " + modifiers;
    tmpString = KeyEvent.getKeyModifiersText(modifiers);
    if (tmpString.length() > 0) {
      modString += " (" + tmpString + ")";
    } else {
      modString += " (no modifiers)";
    }

    displayArea.append(s + newline
              + "  " + charString + newline
              + "  " + keyCodeString + newline
              + "  " + modString + newline);
  }
}

prom
Avatar billede prom Nybegynder
17. juni 2002 - 11:09 #6
Download javas tutorial, der er en masse gode eksempler:

http://java.sun.com/docs/books/tutorial/information/download.html

prom
Avatar billede qermital Nybegynder
17. juni 2002 - 11:36 #7
jeg undersøge lige sagen når jeg kommer hjem fra arbejdet og hvis det spiller får du dine points.
Avatar billede prom Nybegynder
17. juni 2002 - 14:57 #8
Eksemplet viser hvordan man kan se hvilken keyboard-tast der bliver aktiveret, men det burde være nok til at komme i gang med at løse dit specifikke problem...

prom
Avatar billede qermital Nybegynder
17. juni 2002 - 22:33 #9
jeg har fået det til at virke delvist men kan se en ende på det. så her er dine VELFORTJENTE points..... takker for hjælpen
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester