Keyboard input - single char

All I want is a single character of keyboard input. Is there a better (simpler) way to do this?
byte[]     bInput;
String     cResult;
bInput = new byte[1];
bInput[0] = 0;
System.out.print("\nStart FirewallChat in [C]lient or [S]erver mode? ");
try
{     System.in.read(bInput);
} catch (IOException e)
{     System.out.println("System.in.read(byte[] b) threw IOException. An I/O error occurred - maybe the input stream has been closed? Exception follows : " + e);
System.out.println(Character.toLowerCase((char)new Byte(bInput[0]).intValue()));

char c = (char)System.in.read();

Similar Messages

  • Parsing single chars to a vector.

    I'm reading from a file, using BufferedReader. Readig a line at a time. Currently i have a StringTokenizer which breaks up the line using whitespace. How can I break up the "input" line by single chars, and how do I get the delim to work using the StringTokenizer, so that I can use other char instdead of using whitespace- or set up mutliple delims.
    Is there a way I could add the single chars to a vector as an indvidual element to the vector so that I can bump off the elements that I do not have a use for?

    In order to use the " character, you need to use the escape character \" So, your statement would look like
    st = new StringTokenizer(yourString,"\"<");The second char in that is a <, but the parser on the site sometimes converts it to the html code as & lt; Just use whatever chars you need in the second parameter
    HTH

  • PPC apps (on intel): slow startup, no keyboard input, Excel-Office crashes

    Hello,
    It seems, that all apps that are using rosetta don't work properly.
    - The startup time is extremely long, some minutes, spinning wheel is visible
    - input via keyboard isn't possible
    - Office v. X (Word, Excel, PowerPoint) apps are crashing at startup
    A test with the Calculator.app switched to open with rosetta showed also this symptoms (no keyboard input possible)
    Curiously all this happens *only with my account*. So first I thought it is a problem of the preferences or fonts. But deletion or substitution from backup does not succeed. Also I did the tip sudo "update_prebinding -root / -force" but it didn't help.
    I mad up a fresh account and compared all the files in the ~user/Library path, if there is a file missing in the brocken account. But didn't found some.
    Is there anywhere a file outside the ~user/library path, which has user dependend informations (for rosetta)?
    Many thanks in advance for any idea
    George

    Yeah, I've got it!
    In /Library/Caches I found the following files and trashed them. Now all PowerPC application incl. Office v. X are working again. Huh!
    (My User ID is 504)
    com.apple.ImageCaptureExtension2.ICADeviceDatabase.504
    com.apple.IntlDataCache.sbdl.504
    com.apple.IntlDataCache.504
    com.apple.IntlDataCache.tecx.504
    com.apple.IntlDataCache.kbdx.504
    com.apple.LaunchServices-014504.csstore
    com.apple.IntlDataCache.le.504
    com.apple.colorsync.profiles.504
    com.apple.IntlDataCache.le.kbdx.504
    com.apple.dock.iconcache.504
    com.apple.IntlDataCache.le.sbdl.504
    com.apple.psnormalizer.fontcache.le.504
    com.apple.IntlDataCache.le.taid.504
    com.apple.psnormalizer.fontcache.le.504.lock
    com.apple.IntlDataCache.le.tecx.504
    I didn't look for the single fault in any of this files, but maybe someone has an idea, which file is related to rosetta and likes to post it.
    Best regards and thanks to everybody who thoughts about a solution for my problem
    George

  • Validating keyboard input data

    I am new to java and have a question regarding validating input.
    I did check the FAQ for "Validating keyboard input data" but found no help.
    I have to check that the keyboard input is only one of the following char a c,C,d,D
    Ihave tried different conditional loops and statements but cannot get it right.
    Could someone point me in the right direction.
    I am using the latest java.
    Thanx

    well i think i am close but i can't figure out why i have an endless loop or how to fix it
    System.out.print("Please enter the Costumer Type C or R: ");
    String cosTypeTemp = scan.nextLine();
    cosType = cosTypeTemp.charAt(0);
    while (cosType != 'c' || cosType != 'C' || cosType != 'd' || cosType != 'D');
    do
    costumerType = 'N';
    System.out.print("Wrong input please enter the Costumer Type c or r: ");
    cosTypeTemp = scan.nextLine();
    cosType = cosTypeTemp.charAt(0);
    while (cosType != 'c' || cosType != 'C' || cosType != 'd' || cosType != 'D');
    costumerType = cosType;
    System.out.print("Please enter the Number of basic service connections: ");
    System.out.print("Please enter the Costumer Type C or R: ");
    String cosTypeTemp = scan.nextLine();
    cosType = cosTypeTemp.charAt(0);
    while (cosType != 'c' || cosType != 'C' || cosType != 'd' || cosType != 'D');
    do
    costumerType = 'N';
    System.out.print("Wrong input please enter the Costumer Type c or r: ");
    cosTypeTemp = scan.nextLine();
    cosType = cosTypeTemp.charAt(0);
    while (cosType != 'c' || cosType != 'C' || cosType != 'd' || cosType != 'D');
    costumerType = cosType;
    System.out.print("Please enter the Number of basic service connections: ");
    numBsSrvConecs = scan.nextInt();
    when i enter the correct data ( c, C, d, D) it goes into infinite loop and never reaches the next keyboard scan for System.out.print("Please enter the Costumer Type C or R: ");

  • I need to get Keyboard input as well as mouse input on a JButton

    I need to get Keyboard input as well as mouse input on a JButton
    I have attempted to implement KeyListener. I get the keyCode but I need it to go in to the same String variable as my Actionlistener section.

    Here is the code I have trouble with getting keyboard input as wells as mouse input into the same variable.
    public class Calctester extends JFrame
    implements ActionListener, KeyListener
    private double var1, var2;//var1 and var2 are used to perform calculation
    String operand1 = "";//takes first input until an operator is pressed
    String operand2 = "";//takes input after operator is invoked
    double result;//is used to store the result
    boolean flag = false;//to signal operator pressed
    boolean decimalFlag = false;//to signal decimal pressed
    String stringInput;//used as a temporary store for all entry to allow for conditions to be evaluated
    char ch; //used to store the operator for comparison//Reason is pre does not compare using string
    String pre = "";//used to store the operator
    double mem; //will hold memory operation values
    double vMod; //Temporary store for var2 to be used with percent operations
    //Creates buttons
    JButton btn0 = new JButton("0");
    JButton btn1 = new JButton("1");
    JButton btn2 = new JButton("2");
    JButton btn3 = new JButton("3");
    JButton btn4 = new JButton("4");
    JButton btn5 = new JButton("5");
    JButton btn6 = new JButton("6");
    JButton btn7 = new JButton("7");
    JButton btn8 = new JButton("8");
    JButton btn9 = new JButton("9");
    JButton btnC = new JButton("C");
    JButton btnCE = new JButton("CE");
    JButton btnBkpSpc = new JButton("Backspace");
    JButton btnPlus = new JButton("+");
    JButton btnMinus = new JButton("-");
    JButton btnMultiply = new JButton("*");
    JButton btnDivide = new JButton("/");
    JButton btnEquals = new JButton("=");
    JButton btnPeriod = new JButton(".");
    JButton btnPlusMinus = new JButton("+/-");
    JButton btnSqrt = new JButton("sqrt");
    JButton btnMod = new JButton("%");
    JButton btnOneOverX = new JButton("1/x");
    JButton btnMC = new JButton("MC");
    JButton btnMR = new JButton("MR");
    JButton btnMS = new JButton("MS");
    JButton btnMPlus = new JButton("M+");
    //Displays Text area for Display
    JTextField txtArea = new JTextField("0.");//The calculation display area set to 0.
    JTextField mArea = new JTextField();//to display memory operations
    //Default constructor
    Calctester()
    //Defines a content pane
    Container c = getContentPane();
    //Defines the layout of the frame and sets it to null to allow absolute positioning
    c.setLayout(null);
    //Defines event handling
    btn0.addActionListener(this);
    btn1.addActionListener(this);
    btn2.addActionListener(this);
    btn3.addActionListener(this);
    btn4.addActionListener(this);
    btn5.addActionListener(this);
    btn6.addActionListener(this);
    btn7.addActionListener(this);
    btn8.addActionListener(this);
    btn9.addActionListener(this);
    btnC.addActionListener(this);
    btnCE.addActionListener(this);
    btnBkpSpc.addActionListener(this);
    btnPlus.addActionListener(this);
    btnMinus.addActionListener(this);
    btnDivide.addActionListener(this);
    btnMultiply.addActionListener(this);
    btnEquals.addActionListener(this);
    btnPeriod.addActionListener(this);
    btnPlusMinus.addActionListener(this);
    btnSqrt.addActionListener(this);
    btnMod.addActionListener(this);
    btnOneOverX.addActionListener(this);
    btnMR.addActionListener(this);
    btnMS.addActionListener(this);
    btnMPlus.addActionListener(this);
    btnMC.addActionListener(this);
    btn1.addKeyListener(this);
    //Adds the buttons to the frame and sets the font of the label to be
    //logical font Dialog,plain as opposed to Bold and the label size to 12
    //Also sets the border type of aech button
    c.add(btn0).setFont(new Font("Dialog", Font.PLAIN, 12));
    btn0.setBorder(new BevelBorder(BevelBorder.RAISED));
    c.add(btn1).setFont(new Font("Dialog", Font.PLAIN, 12));
    btn1.setBorder(new BevelBorder(BevelBorder.RAISED));
    c.add(btn2).setFont(new Font("Dialog", Font.PLAIN, 12));
    btn2.setBorder(new BevelBorder(BevelBorder.RAISED));
    c.add(btn3).setFont(new Font("Dialog", Font.PLAIN, 12));
    btn3.setBorder(new BevelBorder(BevelBorder.RAISED));
    c.add(btn4).setFont(new Font("Dialog", Font.PLAIN, 12));
    btn4.setBorder(new BevelBorder(BevelBorder.RAISED));
    c.add(btn5).setFont(new Font("Dialog", Font.PLAIN, 12));
    btn5.setBorder(new BevelBorder(BevelBorder.RAISED));
    c.add(btn6).setFont(new Font("Dialog", Font.PLAIN, 12));
    btn6.setBorder(new BevelBorder(BevelBorder.RAISED));
    c.add(btn7).setFont(new Font("Dialog", Font.PLAIN, 12));
    btn7.setBorder(new BevelBorder(BevelBorder.RAISED));
    c.add(btn8).setFont(new Font("Dialog", Font.PLAIN, 12));
    btn8.setBorder(new BevelBorder(BevelBorder.RAISED));
    c.add(btn9).setFont(new Font("Dialog", Font.PLAIN, 12));
    btn9.setBorder(new BevelBorder(BevelBorder.RAISED));
    c.add(btnC).setFont(new Font("Dialog", Font.PLAIN, 12));
    btnC.setBorder(new BevelBorder(BevelBorder.RAISED));
    c.add(btnCE).setFont(new Font("Helvetica", Font.PLAIN, 12));
    btnCE.setBorder(new BevelBorder(BevelBorder.RAISED));
    c.add(btnBkpSpc).setFont(new Font("Dialog", Font.PLAIN, 12));
    btnBkpSpc.setBorder(new BevelBorder(BevelBorder.RAISED));
    c.add(btnPlus).setFont(new Font("Dialog", Font.PLAIN, 12));
    btnPlus.setBorder(new BevelBorder(BevelBorder.RAISED));
    c.add(btnMinus).setFont(new Font("Dialog", Font.PLAIN, 12));
    btnMinus.setBorder(new BevelBorder(BevelBorder.RAISED));
    c.add(btnMultiply).setFont(new Font("Dialog", Font.PLAIN, 12));
    btnMultiply.setBorder(new BevelBorder(BevelBorder.RAISED));
    c.add(btnDivide).setFont(new Font("Dialog", Font.PLAIN, 12));
    btnDivide.setBorder(new BevelBorder(BevelBorder.RAISED));
    c.add(btnEquals).setFont(new Font("Dialog", Font.PLAIN, 12));
    btnEquals.setBorder(new BevelBorder(BevelBorder.RAISED));
    c.add(btnPeriod).setFont(new Font("Dialog", Font.PLAIN, 12));
    btnPeriod.setBorder(new BevelBorder(BevelBorder.RAISED));
    c.add(btnPlusMinus).setFont(new Font("Dialog", Font.PLAIN, 12));
    btnPlusMinus.setBorder(new BevelBorder(BevelBorder.RAISED));
    c.add(btnMod).setFont(new Font("Albertus Medium", Font.PLAIN, 12));
    btnMod.setBorder(new BevelBorder(BevelBorder.RAISED));
    c.add(btnSqrt).setFont(new Font("Microsoft San Serif", Font.PLAIN, 11));
    btnSqrt.setBorder(new BevelBorder(BevelBorder.RAISED));
    c.add(btnOneOverX).setFont(new Font("Dialog", Font.PLAIN, 12));
    btnOneOverX.setBorder(new BevelBorder(BevelBorder.RAISED));
    c.add(btnMC).setFont(new Font("Dialog", Font.PLAIN, 12));
    btnMC.setBorder(new BevelBorder(BevelBorder.RAISED));
    c.add(btnMS).setFont(new Font("Dialog", Font.PLAIN, 12));
    btnMS.setBorder(new BevelBorder(BevelBorder.RAISED));
    c.add(btnMR).setFont(new Font("Dialog", Font.PLAIN, 12));
    btnMR.setBorder(new BevelBorder(BevelBorder.RAISED));
    c.add(btnMPlus).setFont(new Font("Dialog", Font.PLAIN, 12));
    btnMPlus.setBorder(new BevelBorder(BevelBorder.RAISED));
    //sets the color of the label of the buttons
    btnC.setForeground(Color.red);
    btnCE.setForeground(Color.red);
    btnBkpSpc.setForeground(Color.red);
    btnDivide.setForeground(Color.red);
    btnMultiply.setForeground(Color.red);
    btnMinus.setForeground(Color.red);
    btnPlus.setForeground(Color.red);
    btnMC.setForeground(Color.red);
    btnMR.setForeground(Color.red);
    btnMS.setForeground(Color.red);
    btnMPlus.setForeground(Color.red);
    btnEquals.setForeground(Color.red);
    btn0.setForeground(Color.blue);
    btn1.setForeground(Color.blue);
    btn2.setForeground(Color.blue);
    btn3.setForeground(Color.blue);
    btn4.setForeground(Color.blue);
    btn5.setForeground(Color.blue);
    btn6.setForeground(Color.blue);
    btn7.setForeground(Color.blue);
    btn8.setForeground(Color.blue);
    btn9.setForeground(Color.blue);
    btnPlusMinus.setForeground(Color.blue);
    btnSqrt.setForeground(Color.blue);
    btnMod.setForeground(Color.blue);
    btnOneOverX.setForeground(Color.blue);
    btn0.setFocusPainted(false);
    btnPlus.setFocusPainted(false);
    btnEquals.setFocusPainted(false);
    //The display text area and the memory operation text area
    c.add(txtArea);
    txtArea.setBorder(new BevelBorder(BevelBorder.LOWERED));
    txtArea.setBounds(7,0,240,25);//To provide a Text box @ the top of the frame
    txtArea.setEditable(false);
    txtArea.setBackground(Color.white);
    c.add(mArea);
    mArea.setBounds(13, 35, 28, 25);
    mArea.setEditable(false);
    mArea.setBorder(new BevelBorder(BevelBorder.LOWERED));
    setSize(260,251);//size of the frame
    setTitle("Calculator"); //Title
    setVisible(true); //this makes the frame visible on the screen
    setResizable(false); //this disallow resizing of the frame
    setDefaultCloseOperation(EXIT_ON_CLOSE);//to close app
    //instead of the above method you can use the WindowsListener which extennds other classes and implements other interfaces.
    setLocation(300,200);//positioning of the window on the screen
    txtArea.setHorizontalAlignment(JTextField.RIGHT);//sets the text in the text field to the right
    mArea.setHorizontalAlignment(JTextField.CENTER);//centers the label
    JMenu editMenu = new JMenu("Edit");//creates menu
    JMenuItem copy = new JMenuItem("Copy Ctrl+C");//creates menu item
    copy.addActionListener(this);//event handling
    JMenuItem paste = new JMenuItem("Paste Ctrl+V");//creates menu
    paste.addActionListener(this);//event handling
    JMenuBar myMenu = new JMenuBar();//declares a menu bar
    setJMenuBar(myMenu);//adds the menu bar to the frame
    editMenu.setBorderPainted(false);//removes the border shadow around the menu bar
    myMenu.setBorderPainted(false);//removes the border shadow around menu bar
    //adds menu items to the menu, sets the font and font size.
    editMenu.add(paste).setFont(new Font("Dialog", Font.PLAIN, 12));//
    editMenu.add(copy).setFont(new Font("Dialog", Font.PLAIN, 12));
    myMenu.add(editMenu).setFont(new Font("Dialog", Font.PLAIN, 12));
    JMenu viewMenu = new JMenu("View");//creates menu
    JMenuItem sci = new JMenuItem("Scientific");//creates menu item
    sci.addActionListener(this);//event handling
    JMenuItem std = new JMenuItem("Standard");//creates menu item
    //adds menu items to the menu, sets the font and font size.
    viewMenu.add(sci).setFont(new Font("Dialog", Font.PLAIN, 12));
    viewMenu.add(std).setFont(new Font("Dialog", Font.PLAIN, 12));
    myMenu.add(viewMenu).setFont(new Font("Dialog", Font.PLAIN, 12));
    JMenu helpMenu = new JMenu("Help");//creates menu
    JMenuItem helpTopics = new JMenuItem("Help Topics");//creates menu item
    JMenuItem aboutCalc = new JMenuItem("About Calculator");//creates menu item
    helpTopics.addActionListener(this);//event handling
    //helpTopics.setBorder(new BevelBorder(BevelBorder.RAISED));
    helpTopics.setBorder(LineBorder.createGrayLineBorder());
    //adds menu items to the menu, sets the font and font size.
    helpMenu.add(helpTopics).setFont(new Font("Dialog", Font.PLAIN, 12));
    helpMenu.add(aboutCalc).setFont(new Font("Dialog", Font.PLAIN, 12));
    myMenu.add(helpMenu).setFont(new Font("Dialog", Font.PLAIN, 12));
    //aboutCalc.setBorder(new BevelBorder(BevelBorder.RAISED));
    aboutCalc.setBorder(LineBorder.createGrayLineBorder());
    //aboutCalc.setActionCommand("Nothing here right now");
    //Setting absolute positions for the buttons.
    btn0.setBounds(50, 160, 35, 28);
    btn1.setBounds(50, 130, 35, 28);
    btn2.setBounds(90, 130, 35, 28);
    btn3.setBounds(130, 130, 35, 28);
    btn4.setBounds(50, 100, 35, 28);
    btn5.setBounds(90, 100, 35, 28);
    btn6.setBounds(130, 100, 35, 28);
    btn7.setBounds(50, 70, 35, 28);
    btn8.setBounds(90, 70, 35, 28);
    btn9.setBounds(130, 70, 35, 28);
    btnC.setBounds(180, 35, 63, 28);
    btnCE.setBounds(115, 35, 63, 28);
    btnBkpSpc.setBounds(50, 35, 63, 28);
    btnPlus.setBounds(170, 160, 35, 28);
    btnMinus.setBounds(170, 130, 35, 28);
    btnMultiply.setBounds(170, 100, 35, 28);
    btnDivide.setBounds(170, 70, 35, 28);
    btnEquals.setBounds(210, 160, 35, 28);
    btnPeriod.setBounds(130, 160, 35, 28);
    btnPlusMinus.setBounds(90, 160, 35, 28);
    btnMC.setBounds(8, 70, 35, 28);
    btnMR.setBounds(8, 100, 35, 28);
    btnMS.setBounds(8, 130, 35, 28);
    btnMPlus.setBounds(8, 160, 35, 28);
    btnSqrt.setBounds(210, 70, 35, 28);
    btnMod.setBounds(210, 100, 35, 28);
    btnOneOverX.setBounds(210, 130, 35, 28);
    // btn7.addKeyListener(this);
    try
    UIManager.setLookAndFeel("javax.swing.plaf.metal.MetalLookAndFeel");
    SwingUtilities.updateComponentTreeUI(this);
    catch (Exception e)
    System.out.println("Could not load Metal Look and Feel");
    public void keyReleased(KeyEvent e)
    //btn1 = txtArea.getRegisteredKeyStrokes();
    // System.out.println(1);
    // keyTyped();
    public void keyPressed(KeyEvent e)
    //if (e.getActionCommand().equals("1"));
    //(e.getKeyText().compareTo("1"));
    //(e.getKeyCode().equals("1"));
    //else
    System.out.println("Error");
    //keyTyped();
    public void keyTyped(KeyEvent e)
    //displayInfo(e, "KEY TYPED: ");
    System.err.println("KeyTyped >>> " + e.KEY_TYPED);
    //keyEvent.keyTyped();
    // e.KEY_TYPED;
    /* protected void displayInfo (KeyEvent e, string s)
    {KeyCodeString;
    int keyCode = e.getKeyCode();
    keyCodeString = "key code " + keyCode
    + "("
    + KeyEvent.getKeyText(keyCode);
    public void actionPerformed(ActionEvent e)
    stringInput = e.getActionCommand();
    System.out.println("First stringInput action performed>>" +stringInput);
    System.out.println("First pre action performed>>" +pre);
    if (stringInput == "C")
    operand1 = "";
    operand2 = "";
    var1 = 0;
    var2 = 0;
    var1 = result;
    txtArea.setText("0.");
    flag = false;//to force the operations to jump to operand 1 and go through the loop as normal
    pre = "";
    if (stringInput == "CE")
    operand2 = "";
    var2 = 0;
    txtArea.setText("0.");
    flag = true;//to force the operations to jump to operand 1 and go through the loop as normal
    if (stringInput == "MR")
    if (var1 != 0)
    txtArea.setText(Double.toString(var1));
    mArea.setText("M");
    System.err.println("mem@operand1 >> "+ mem );
    else if (var2 != 0)
    txtArea.setText(Double.toString(var2));
    mArea.setText("M");
    System.err.println("mem @ mR else>> "+ mem );
    if (stringInput == "MS")
    mArea.setText("M");
    if (operand1 != "")
    mem = var1;
    else if (operand2 != "")
    mem = var2;
    else
    mem = 0;
    if (stringInput == "MC")
    mArea.setText("");//to clear the text area display
    mem = 0;//to reset the variable
    if (stringInput == "M+")
    mArea.setText("M");
    flag = true;//to force the operations to jump to operand 2 and go through the loop as normal
    if (stringInput == "=")
    //result = evaluate();
    txtArea.setText(Double.toString(result));
    System.out.println("Equals>>" +stringInput);
    System.out.println("Equals>>" +pre);
    System.err.println("The flag at equals is " + flag);
    if (stringInput == "+"||stringInput == "-"||stringInput == "/"||
    stringInput == "*"||stringInput == "=")
    pre = pre.concat(stringInput);
    System.out.println("Second action perfo/check for operator>>" +stringInput);
    System.out.println("Second pre action perfo/check for operator>>" +pre);
    operand2 = "";
    System.err.println("The flag at +,- etc is " + flag);
    if(!flag &&(stringInput == "*"|| stringInput == "/"))
    var2 = 1;
    stringInput = "";
    flag = true;
    if(!flag)
    stringInput = pre;
    System.out.println("if flag true/stringInput" +stringInput);
    System.out.println("flag true/pre" +pre);
    else
    //These statements extract the operator
    stringInput = pre.valueOf(pre.charAt(pre.length()-2));
    ch = pre.charAt(pre.length()-2);
    System.out.println("@ position -2 stringInput" + pre.valueOf(pre.charAt(pre.length()-2)));
    System.out.println("@ position -2 pre" + pre.charAt(pre.length()-2));
    result = evaluate();
    var2 = 0;
    operand2 = "";
    txtArea.setText(Double.toString(result));
    System.out.println("Total is " + result);
    flag = true;
    if(!flag &&(stringInput == "*"|| stringInput == "/"))
    var2 = 1;
    stringInput = "";
    flag = true;
    if (stringInput == "%")
    //evaluate();
    txtArea.setText(Double.toString(result));
    System.err.println("mem @ mR else>> "+ result + " %" );
    if (stringInput == "1/x")
    if (operand1 != "")
    txtArea.setText(Double.toString(1/var1));
    //System.err.println("mem@operand1 >> "+ mem );
    else if (operand2 != "")
    operand2 = "";
    txtArea.setText(Double.toString(1/var2));
    //System.err.println(">> "+ mem );
    if (Character.isDigit(stringInput.charAt(0))||stringInput == ".")
    System.out.println(operand1);
    if (stringInput == "." && operand1 == "")
    operand1 = "0";
    System.out.print("fail op1");
    if (stringInput == "." && operand2 == "")
    System.out.print("fail op2");
    operand2 = "0";
    if (flag==false)
    operand1 = operand1.concat(stringInput);
    result = Double.parseDouble(operand1);
    System.out.println("op1 =>" + operand1);
    txtArea.setText(operand1);
    //result = var1;
    System.out.println("result after var1 = result " + result);
    else
    operand2 = operand2.concat(stringInput);
    var2 = Double.parseDouble(operand2);
    //var2 = vMod;
    System.out.println("op2 =>" + operand2);
    txtArea.setText(" ");//to clear the text area
    txtArea.setText(operand2);//to display the second number if (operators == "+")
    System.out.println("result after var2 " + result);
    public double evaluate()
    if (ch == '+' )
    result = result + var2;
    if (ch == '-' )
    result = result - var2;
    if (ch == '/' )
    result = result / var2;
    if (ch == '*' )
    result = result * var2;
    if (ch == '%')
    var2 = Double.parseDouble(operand2);
    result = result/vMod*100;
    System.out.println("% "+ result);
    return result;
    public static void main(String [] args)
    Calctester x = new Calctester();
    }

  • Satellite A100 Keyboard input language does not match the physical keyboard

    Sorry.
    Actually this is the first row:
    & é " ' ( - è _ ç * ) =
    Regards,
    Leonardo
    I have a SATELLITE A 100 laptop (Model PSAARE-02X01TFR) with french (I think) QWERTY keyboard here and cannot figure out how to set it in Win XP.
    It has these chars on top row:
    (Numbers are shifted)
    The second row has:
    q w e r t y u i o p ^ $
    The third:
    q s d f g h j k l : ù *
    The fourth:
    z x c v b n m ; , !
    Any idea what is it and how do i set it up???
    Thanks, Leonardo

    Hi!
    As Akuma said you can change the keyboard input language in control panel. Its very easy and takes only one minute to change it.
    Check this!
    If you have more questions, please let us know!! :)
    Bye

  • Consume keyboard input

    I am looking for a way to put my gui application in a "wait state." What this entails is that the mouse cursor shows an hourglass and mouse clicks are ignored. Also, any keyboard activity is ignored as well. The reason for this functionality is that there are times that my program needs to perform cpu intensive work and I would like the user to wait until the work is complete before the gui becomes responsive again.
    Now, I figured out how to ignore the input from the mouse by using adding a mouse listener to the GlassPane of the gui's JFrame and setting the GlassPane visible. But I can't find a way to use the GlassPane as a "buffer" between the user's keyboard input and the gui. The only alternative that I have found is to add a KeyListener to every component that can receive keyboard input but I would rather not have to manually add a new listener to every single button, textfield, and table that I might have added to the frame. Is there an elegant solution to ignoring or consuming all keyboard activity on a frame that is already set visible? Thanks for your responses.

    You know, if I read the entire message of the OP, I wouldn't look quite so dumb!
    Take a look at the following. It will block and unblock keyboard input.
    public class DispatchTest
        KeyEventDispatcher blocker = null;
        public JPanel buildPanel()
            JPanel p = new JPanel(new FlowLayout());
            p.add(new JTextField(20));
            return p;
        public void blockInput()
            if (blocker == null)
                blocker = new KeyEventDispatcher()
                    public boolean dispatchKeyEvent(KeyEvent e)
                       e.consume();
                        return true;
            KeyboardFocusManager.getCurrentKeyboardFocusManager().addKeyEventDispatcher(blocker);
        public void unblockInput()
            if (blocker != null)
                KeyboardFocusManager.getCurrentKeyboardFocusManager().removeKeyEventDispatcher(blocker);
        public static void main(String[] x)
            JFrame f = new JFrame();
            DispatchTest t = new DispatchTest();
            f.setContentPane(t.buildPanel());
            t.blockInput();
            f.pack();
            f.setVisible(true);
    }Message was edited by:
    ipooley

  • Keyboard Input

    http://www.rafb.net/paste/results/D3082433.html
    In that link are all three of my classes (UserInterface.java, CalcEngine.java, and Calculator.java)
    I'm trying to do keyboard input for the numbers, the decimal, all the operations and enter. But the way I have it set up, I can't get any of the methods in the CalcEngine.java to run once a button is pressed. It's hard for me the explain, but if you compile it and try looking at the code, you'll understand what I mean.
    -sachit

    Alright, I'll post the 3 classes here.
    #### UserInterface.java ####
    // Date Started: March 1, 2004
    // Date Finished: March 26, 2004
    // Program Description: A graphical user interface for the calculator.
    //                              No calculation is being done here. This class is
    //                              responsible just for putting up the display on
    //                              screen. It then refers to the "CalcEngine" to do
    //                              all the real work.
    import java.awt.*;
    import java.awt.event.*;
    public class UserInterface implements KeyListener
         private CalcEngine calc;
         Frame panelFrame=new Frame("Non-Scientific Calculator");
         static Label displayLabel;
         static String button="";
         // Method Name: UserInterface()
         // Parameters Passed: None
         //     Data Returned: None
         //     Method Purpose: A user interface for the given calcEngine.
         public UserInterface()
              makeFrame();
              panelFrame.setVisible(true);
         // Method Name: setVisible()
         // Parameters Passed: boolean variable visible
         //     Data Returned: None
         //     Method Purpose: Sets the panalFrame interface visible.
    public void setVisible(boolean visible)
              panelFrame.setVisible(visible);
         // Method Name: makeFrame()
         // Parameters Passed: None
         //     Data Returned: None
         //     Method Purpose: The full display of buttons and labels on the calculator.
         private void makeFrame()
              CalcEngine buttonHandler = new CalcEngine();
              Button[] myButtons=new Button[30];
              String[] labels={"","","BS","CE","C","PI","sin","cos","tan","%","sqrt","7","8","9","/","x�","4","5","6","x","1/x","1","2","3","-","-/+","0",".","=","+"};
              Font titleFont=new Font("Courier", Font.BOLD,20);
              Font buttonFont=new Font("Arial", Font.BOLD,13);
              String display="0";
              displayLabel=new Label(display);
              String info = buttonHandler.getInfo();
              Label infoLabel=new Label(info);
              //Labels all the buttons
              for(int i=0;i<myButtons.length;i++)
                   myButtons=new Button(labels[i]);
              panelFrame.setLayout(new BorderLayout(4,5));
              panelFrame.setBackground(Color.gray);
                   displayLabel.setFont(titleFont);
                   displayLabel.setAlignment(Label.RIGHT);
                   panelFrame.add("North",displayLabel);
              Panel secondPanel=new Panel();
              panelFrame.add("Center",secondPanel);
              secondPanel.setLayout(new GridLayout(6,5,5,2));
              secondPanel.setBackground(Color.gray);
                   for(int i=0; i<myButtons.length; i++)
                        secondPanel.add(myButtons[i]);     
                        myButtons[i].setFont(buttonFont);
                        myButtons[i].addKeyListener(this);
                        myButtons[i].addActionListener(buttonHandler);
                   myButtons[0].setBackground(Color.gray);
                   myButtons[0].hide();
                   myButtons[1].hide();
                   panelFrame.add("South",infoLabel);
              panelFrame.resize(270,250);
              panelFrame.show();
         // Method Name: redisplay()
         // Parameters Passed: None
         //     Data Returned: None
         //     Method Purpose: Updates the display of the current number being inputed.
         //                         Also truncates the decimal if it is ".0".
         public static void redisplay()
              boolean itsInt=false;
              int doubleChecker = (int)CalcEngine.getDisplayValue();
              int intValue=0;
              if(CalcEngine.getDisplayValue() == (float)doubleChecker)
                   intValue=(int)Math.round(CalcEngine.getDisplayValue());
                   itsInt=true;
              if(itsInt)
                   displayLabel.setAlignment(Label.RIGHT);
                   displayLabel.setText("" +intValue);
              else
                   displayLabel.setAlignment(Label.RIGHT);
                   displayLabel.setText("" + CalcEngine.getDisplayValue());
         public void keyTyped(KeyEvent e)
              char keyChar = e.getKeyChar();
              button=""+keyChar;
              CalcEngine calcEng= new CalcEngine();
              if(keyChar == '+')
                   System.out.println("+ PRESSED!");
              else if(keyChar == '-')
                   System.out.println("- PRESSED!");
              else if(keyChar == KeyEvent.VK_SLASH)
                   System.out.println("/ PRESSED!");
              else if(keyChar == '*')
                   System.out.println("x PRESSED!");
              else if(keyChar == KeyEvent.VK_1)
                   System.out.println("1 PRESSED!");
              else if(keyChar == KeyEvent.VK_2)
                   System.out.println("2 PRESSED!");
              else if(keyChar == KeyEvent.VK_3)
                   System.out.println("3 PRESSED!");
              else if(keyChar == KeyEvent.VK_4)
                   System.out.println("4 PRESSED!");
              else if(keyChar == KeyEvent.VK_5)
                   System.out.println("5 PRESSED!");
              else if(keyChar == KeyEvent.VK_6)
                   System.out.println("6 PRESSED!");
              else if(keyChar == KeyEvent.VK_7)
                   System.out.println("7 PRESSED!");
              else if(keyChar == KeyEvent.VK_8)
                   System.out.println("8 PRESSED!");
              else if(keyChar == KeyEvent.VK_9)
                   System.out.println("9 PRESSED!");
              else if(keyChar == KeyEvent.VK_0)
                   System.out.println("0 PRESSED!");
              else if(keyChar == KeyEvent.VK_ENTER || keyChar == KeyEvent.VK_EQUALS)
                   calcEng.equals();
                   System.out.println("= PRESSED!");          
              else if(keyChar == KeyEvent.VK_PERIOD)
                   System.out.println(". PRESSED!");
              /*else
                   /// QUESTION: what do these next two lines do?
                   byte bytes[] = {(byte)keyChar};
                   System.out.println(bytes);
                   //     command = new String(bytes);
         public static String passButton()
              return button;
         public void keyPressed(KeyEvent e)
         public void keyReleased(KeyEvent e)
    #### CalcEngine.java #####
    // Date Started: March 1, 2004
    // Date Finished: March 26, 2004
    // Program Description: Does all the calculations for the calculator.
    import java.awt.event.*;
    import java.awt.*;
    public class CalcEngine implements ActionListener
         final int ARRAY_SIZE=100;
         String []buttonPressed = new String[ARRAY_SIZE];
         String buttonCheck="";
         static String userDisplay="";
         int numberLength=0;
         int currentNumber=0;
         int previousNumber=0;
         int currentElement=0;
         boolean allowDecimal=true;
         boolean cEPressed=false;
         String buttonCheckKey;
         // Method Name: CalcEngine()
         // Parameters Passed: None
         //     Data Returned: None
         //     Method Purpose: Instance of the CalcEngine.
         public CalcEngine()
              buttonCheckKey=UserInterface.passButton();
              buttonCheck=buttonCheckKey;
              System.out.println("ButtonCheckKey " +buttonCheck);
              if(buttonCheck=="=")
                   if(currentElement>=2 && !buttonPressed[currentElement].equals(""))
                        equals();
              else if(buttonCheck.equals("C"))
                   clear();
              else if(buttonCheck.equals("CE"))
                   clearOne();
              else if(buttonCheck.equals("BS"))
                   backSpace();
              else if(buttonCheck.equals("sqrt"))
                   squareRoot();
              else if(buttonCheck.equals("sin") || buttonCheck.equals("cos") || buttonCheck.equals("tan"))
                   trig(buttonCheck);
              else if(buttonCheck.equals("PI"))
                   numPI();
              else if(buttonCheck.equals("1/x"))
                   oneOver();
              else if(buttonCheck.equals("x�"))
                   powerTwo();
              else if(buttonCheck.equals("-/+"))
                   negPos();
              //else if(buttonCheck.equals("."))
              //     decimal(event);
              else if((buttonCheck.equals("+") || buttonCheck.equals("-") || buttonCheck.equals("x") || buttonCheck.equals("/") || buttonCheck.equals("%")) && !buttonPressed[currentElement].equals(""))
                   operations(buttonCheck);
              //else     
              //     allNumbers(event);
              System.out.println("1st: "+buttonPressed[0]+ "\n2nd: " buttonPressed[1] "\n3rd: " buttonPressed[2] "\n4th: " buttonPressed[3] "\n5th: " +buttonPressed[4]);
              System.out.println("6th: "+buttonPressed[5]+ "\n7th: " buttonPressed[6] "\n8th: " buttonPressed[7] "\n9th: " buttonPressed[8]"\n");
         // Method Name: getDisplayValue()
         // Parameters Passed: None
         //     Data Returned: float variable N/A
         //     Method Purpose: Retrived the updated number to display on the calculator
         //                         and passes it as a double.
    public static double getDisplayValue()
              return Double.valueOf(userDisplay).doubleValue();
         // Method Name: actionPerformed()
         // Parameters Passed: ActionEvent variable event
         //     Data Returned: None
         //     Method Purpose: Run the correct method depending on what button is pressed.
         public void actionPerformed(ActionEvent event/*, String button, boolean keyBoard*/)
              //Removes null from buttonPressed array
              for(int i=0; i<buttonPressed.length; i++)
                   if(buttonPressed[i]==null)
                        buttonPressed[i]="";
              numberLength++;
              buttonCheck=event.getActionCommand();     //Gets the button that was pressed
              //Runs the correct method depending on which button is pressed
              if(buttonCheck=="=")
                   if(currentElement>=2 && !buttonPressed[currentElement].equals(""))
                        equals();
              else if(buttonCheck.equals("C"))
                   clear();
              else if(buttonCheck.equals("CE"))
                   clearOne();
              else if(buttonCheck.equals("BS"))
                   backSpace();
              else if(buttonCheck.equals("sqrt"))
                   squareRoot();
              else if(buttonCheck.equals("sin") || buttonCheck.equals("cos") || buttonCheck.equals("tan"))
                   trig(buttonCheck);
              else if(buttonCheck.equals("PI"))
                   numPI();
              else if(buttonCheck.equals("1/x"))
                   oneOver();
              else if(buttonCheck.equals("x�"))
                   powerTwo();
              else if(buttonCheck.equals("-/+"))
                   negPos();
              else if(buttonCheck.equals("."))
                   decimal(event);
              else if((buttonCheck.equals("+") || buttonCheck.equals("-") || buttonCheck.equals("x") || buttonCheck.equals("/") || buttonCheck.equals("%")) && !buttonPressed[currentElement].equals(""))
                   operations(buttonCheck);
              else     
                   allNumbers(event);
              System.out.println("1st: "+buttonPressed[0]+ "\n2nd: " buttonPressed[1] "\n3rd: " buttonPressed[2] "\n4th: " buttonPressed[3] "\n5th: " +buttonPressed[4]);
              System.out.println("6th: "+buttonPressed[5]+ "\n7th: " buttonPressed[6] "\n8th: " buttonPressed[7] "\n9th: " buttonPressed[8]"\n");
         // Method Name: clear()
         // Parameters Passed: None
         //     Data Returned: None
         //     Method Purpose: Is run if the "C" button is pressed. Clears all the numbers
         //                         inputted into the calculator.
         public void clear()
              for(int i=0; i<buttonPressed.length; i++)
                        buttonPressed[i]="";
              userDisplay="0";
              currentElement=0;
              numberLength=0;
              UserInterface.redisplay();
         // Method Name: clearOne()
         // Parameters Passed: None
         //     Data Returned: None
         //     Method Purpose: Is run if the "CE" button is pressed. Deletes the last
         //                         entire number inputted into the calculator. For example,
         //                         if "5x123" was inputted, it would go back to "5x".
         public void clearOne()
              if(currentElement >= 2)
                   buttonPressed[currentElement]="";
                   userDisplay=buttonPressed[currentElement-2];
                   numberLength=0;
                   cEPressed=true;
                   UserInterface.redisplay();
         // Method Name: backSpace()
         // Parameters Passed: None
         //     Data Returned: None
         //     Method Purpose: Is run if the "BS" button is pressed. Deletes the last
         //                         number inputted into the calculator. For example,
         //                         if "5x123" was inputted, it would go back to "5x12".
         public void backSpace()
                   int stringSize=buttonPressed[currentElement].length();
                   buttonPressed[currentElement] = userDisplay.substring(0, userDisplay.length() - 1);
                   userDisplay=buttonPressed[currentElement];
                   UserInterface.redisplay();
         // Method Name: trig()
         // Parameters Passed: String variable buttonCheck
         //     Data Returned: None
         //     Method Purpose: Is run if the "sin", "cos", or "tan" button is pressed.
         //                         Finds the sin, cos or tan of the current number.
         public void trig(String buttonCheck)
              if(buttonCheck.equals("sin"))
                   double sinThisNum=Double.valueOf(buttonPressed[currentElement]).doubleValue();
                   double sinNum=Math.sin(sinThisNum);
                   buttonPressed[currentElement]=""+sinNum;               
              else if(buttonCheck.equals("cos"))
                   double cosThisNum=Double.valueOf(buttonPressed[currentElement]).doubleValue();
                   double cosNum=Math.cos(cosThisNum);
                   buttonPressed[currentElement]=""+cosNum;                              
              else if(buttonCheck.equals("tan"))
                   double tanThisNum=Double.valueOf(buttonPressed[currentElement]).doubleValue();
                   double tanNum=Math.tan(tanThisNum);
                   buttonPressed[currentElement]=""+tanNum;                              
              userDisplay=buttonPressed[currentElement];
              UserInterface.redisplay();
         // Method Name: squareRoot()
         // Parameters Passed: None
         //     Data Returned: None
         //     Method Purpose: Is run if the "sqrt" button is pressed. Sqaures the current
         //                         number.
         public void squareRoot()
              if(currentElement==0 || currentElement % 2==0)
                   double rootThisNum=Double.valueOf(buttonPressed[currentElement]).doubleValue();
                   double rootedNum=Math.sqrt(rootThisNum);
                   buttonPressed[currentElement]=""+rootedNum;
                   userDisplay=buttonPressed[currentElement];
                   UserInterface.redisplay();
         // Method Name: numPI()
         // Parameters Passed: None
         //     Data Returned: None
         //     Method Purpose: Is run if the "PI" button is pressed. Allows the user to
         //                         input the value of PI.
         public void numPI()
              double PInumber=Math.PI;
              buttonPressed[currentElement]=""+PInumber;
              userDisplay=buttonPressed[currentElement];
              UserInterface.redisplay();
         // Method Name: oneOver()
         // Parameters Passed: None
         //     Data Returned: None
         //     Method Purpose: Is run if the "1/x" button is pressed. This will divide
         //                         the current number by 1.
         public void oneOver()
              if(currentElement==0 || currentElement % 2==0)
                   double oneOverNum=Double.valueOf(buttonPressed[currentElement]).doubleValue();
                   oneOverNum=1/oneOverNum;
                   buttonPressed[currentElement]=""+oneOverNum;
                   userDisplay=buttonPressed[currentElement];
                   UserInterface.redisplay();
         // Method Name: powerTwo()
         // Parameters Passed: None
         //     Data Returned: None
         //     Method Purpose: Is run if the "x^2" button is pressed. This will take the
         //                         current number to the power 2.
         public void powerTwo()
              if(currentElement==0 || currentElement % 2==0)
                   double powNum=Double.valueOf(buttonPressed[currentElement]).doubleValue();
                   powNum=Math.pow(powNum,2);
                   buttonPressed[currentElement]=""+powNum;
                   userDisplay=buttonPressed[currentElement];
                   UserInterface.redisplay();
         // Method Name: negPos()
         // Parameters Passed: None
         //     Data Returned: None
         //     Method Purpose: Is run if the "-/+" button is pressed. Toggles the number
         //                         between a negative and positive value.
         public void negPos()
              if(userDisplay.charAt(0)!='-')
                   userDisplay="-"+userDisplay;
              else
                   userDisplay=userDisplay.substring(1);
              buttonPressed[currentElement]=userDisplay;
              UserInterface.redisplay();
         // Method Name: decimal()
         // Parameters Passed: ActionEvent variable event
         //     Data Returned: None
         //     Method Purpose: Is run if the "C" button is pressed. Clears all the numbers
         //                         inputted into the calculator.
         public void decimal(ActionEvent event)
              if(allowDecimal)
                   buttonPressed[currentElement]+=event.getActionCommand();
                   userDisplay+=event.getActionCommand();
                   allowDecimal=false;
                   UserInterface.redisplay();
         // Method Name: operations()
         // Parameters Passed: String variable buttonCheck
         //     Data Returned: None
         //     Method Purpose: Is run if the "+","-","x","/","%" button is pressed. Depending
         //                         on which operation is selected, the calculator will perform that.
         public void operations(String buttonCheck)
              currentElement++;
              if(buttonCheck.equals("+"))
                   buttonPressed[currentElement]="+";
              else if(buttonCheck.equals("-"))
                   buttonPressed[currentElement]="-";
              else if(buttonCheck.equals("x"))
                   buttonPressed[currentElement]="x";
              else if(buttonCheck.equals("/"))
                   buttonPressed[currentElement]="/";
              else if(buttonCheck.equals("%"))
                   buttonPressed[currentElement]="%";
              currentElement++;
              numberLength=0;
              userDisplay="0";
              allowDecimal=true;               
         // Method Name: allNumbers()
         // Parameters Passed: ActionEvent variable event
         //     Data Returned: None
         //     Method Purpose: Is run if any of the numbers are pressed. Adds the inputted
         //                         number to the already ongoing number in the display.
         public void allNumbers(ActionEvent event)
              if(checkInt(event.getActionCommand()))
                   if(cEPressed)
                        buttonPressed[currentElement]+=event.getActionCommand();
                        UserInterface.redisplay();
                        userDisplay=event.getActionCommand();
                        cEPressed=false;                         
                        UserInterface.redisplay();
                   else
                        buttonPressed[currentElement]+=event.getActionCommand();
                        userDisplay+=event.getActionCommand();
                        UserInterface.redisplay();
         // Method Name: checkInt()
         // Parameters Passed: String variable dataInput
         //     Data Returned: None
         //     Method Purpose: A quick check to see if the button pressed is a number.
         //                         Rather than doing if(buttonCheck=="1") for every number.
         public boolean checkInt(String dataInput)
              try
                   int n=Integer.parseInt(dataInput);
                   return true;          
              catch (NumberFormatException nfe)
                   return false;
         // Method Name: equals()
         // Parameters Passed: None
         //     Data Returned: None
         //     Method Purpose: Is run if the "=" button is pressed. Takes all the inputted
         //                         numbers and operations and executes all the calculations.
         public void equals()
              double firstNum=0;
              double secondNum=0;
              double currentAns=0;
              int howBig=0;
              for(int i=0; i<buttonPressed.length;i+=2)
                   if(buttonPressed[i]!="")
                        howBig++;
              firstNum=Double.valueOf(buttonPressed[0]).doubleValue();
              for(int j=0; j<=howBig-1; j+=2)
                   secondNum=Double.valueOf(buttonPressed[j+2]).doubleValue();
                   if(buttonPressed[j+1].equals("+"))
                        currentAns=firstNum+secondNum;
                   else if(buttonPressed[j+1].equals("-"))
                        currentAns=firstNum-secondNum;
                   else if(buttonPressed[j+1].equals("x"))
                        currentAns=firstNum*secondNum;
                   else if(buttonPressed[j+1].equals("/"))
                        currentAns=firstNum/secondNum;
                   else if(buttonPressed[j+1].equals("%"))
                        currentAns=firstNum%secondNum;
                   firstNum=currentAns;     
              for(int i=0; i<buttonPressed.length; i++)
                        buttonPressed[i]="";
              buttonPressed[0]=""+currentAns;
              currentElement=0;
              userDisplay=""+currentAns;
              UserInterface.redisplay();
         // Method Name: getInfo()
         // Parameters Passed: None
         //     Data Returned: String variable N/A
         //     Method Purpose: Return the title of this calculation engine.
         public String getInfo()
              return "ver 0.9 Copyright � 2001-2003 Harish.";
    ### Calculator.java ###
    // Date Started: March 1, 2004
    // Date Finished: March 26, 2004
    // Program Description: The main class of a simple calculator.
    public class Calculator
         private CalcEngine engine;
         private UserInterface gui;
         // Method Name: Calculator()
         // Parameters Passed: None
         //     Data Returned: None
         //     Method Purpose: Creates the calculator and displays it on the screen.
         public Calculator()
              engine = new CalcEngine();
              gui = new UserInterface();
         // Method Name: show()
         // Parameters Passed: None
         //     Data Returned: None
         //     Method Purpose: If the window is closed, it will show it again.
         public void show()
              gui.setVisible(true);
         // Method Name: main()
         // Parameters Passed: String variable []args
         //     Data Returned: None
         //     Method Purpose: The main method that runs the Calculator()
         public static void main(String [] args)
              new Calculator();
    -s64

  • Keyboard input delayed in Siebel application // letters lost while typing

    Hi all,
    We have a strange problem on a client computer. While working with Siebel, keyboard input is extremely delayed. When typing a word or a phrase, it takes some seconds to appear in the corresponding field, and also some chars are just lost if one is typing too fast. This does only happen in Siebel - all other applications are OK.
    I have seen this already some months ago, but don't remember the cause.
    Web Client 7.8.2.14 QF0E76
    Win XP SP3 IE8
    Did anyone ever experience this? Might be some specific driver issue or IE security update or whatever?
    Thanks
    Benny

    Thanks Wilson for your input, unfortunately resetting browser settings and stuff like this does not help.
    In the meantime I have done more research on this and found something interesting. The dropped characters / missing keystrokes do only appear when typing in Siebel popup applets. We do NEVER lose any keystroke when typing in a normal form or list applet. I have run a little test with a vanilla SRF file and a VBS Script.
    I placed a VBS file on my desktop which will use SendKeys to simulate typing the word "Siebel" several times.
    The source code of the VBS file is:
    >
    Option Explicit
    Dim WshShell, c
    Set WshShell = CreateObject("WScript.Shell")
    c=0
    WScript.Sleep 5000
    Do While c < 5
    WshShell.SendKeys "S"
    WScript.Sleep 70
    WshShell.SendKeys "i"
    WScript.Sleep 40
    WshShell.SendKeys "e"
    WScript.Sleep 30
    WshShell.SendKeys "b"
    WScript.Sleep 90
    WshShell.SendKeys "e"
    WScript.Sleep 120
    WshShell.SendKeys "l"
    WScript.Sleep 70
    WshShell.SendKeys " "
    WScript.Sleep 90
    c = c + 1
    Loop
    WScript.Quitwhen I click this script I have 5 seconds to switch to Siebel and point the cursor into a text field.
    -> When this text field is on a form applet, it correctly writes "Siebel Siebel Siebel Siebel Siebel"
    -> When this field is on a MVG applet, it sometimes drops keystrokes like "Siebel Siel iebel Siebel Sibel"
    what the hell could be the problem ??????
    Could someone try this in another environment??
    We are on 7.8.2.14 QF0E76 ...

  • Keyboard input stopped working on Solaris 11 Live x86 Toshiba R835 Notebook

    I can boot, and keyboard input works for login, but does not work for xterm, terminal, Firefox, ... Mouse works for gparted and apps. It did work for 8 hrs but stopped. Any suggestions ?

    brebs wrote:
    (EE) Error loading keymap /tmp/server-0.xkm
    I would be googling for that. E.g. see thread.
    So did you update xkeyboard-config? It's tedious that you haven't had the sense yet to list which packages got updated, along with version numbers.
    It's nice to see you enter here, brebs!
    A few things have happened:
    I just noticed that the file '/etc/X11/xinit/xinitrc' isn't present at all! It was present when I posted the thread (I think). So X didn't even start. I had to create .xinitrc in my home directory with single like 'exec xterm'. X started fine but keyboard still didn't work.
    Out of nowhere, I thought of using nouveau drivers instead of Nvidia drivers. So I went ahead and switched to nouveau and bam - keyboard is working. Enabled GDM and keyboard is still working. I still would like know what went wrong with Nvidia - for educational purposes.
    What more details should I provide? I'd like to have Nvidia drivers back.
    Last edited by akshay2000 (2013-02-25 16:17:07)

  • TS3280 How can i enable both paired bluetooth and ios keyboard input at the same time?

    How can i enable both paired bluetooth and ios keyboard input at the same time?
    This is needed for the app im working on. Need some user input via keypad as well as scanner input via a paired bluetooth scanner.

    You probably should not be using a keyboard bluetooth profile for a scanner, I am not a developer for apple so do not know the location for you to find out the correct profile you should be using for an input device that is not a keyboard. Sorry,
    I am sure if you navigate the apple developer site you will probaly finmd what you're looking for.
    https://developer.apple.com

  • How to use multiple hierarchies for a single char in single query

    Hi,
    Is there any way that we can use multiple hierarchies for a single char in single query. I tried and it just allows me to select one hierarchy even if I use hierarchy variable.
    I have a requirement where user wants to see information related to a cost center with different cost center groups in different hierarchies (every year has different cost center group hierarchies).
    Suppose I want to see information related to a cost center from year 2001-2004.in these four year cost center may have been associated to different groups depending upon that year hierarchy. How can I do that?
    Thanks
    Jona

    Nope. Now way to do this.
    There is always just one hierarchy assigned to a characteristic. And even if the hierarchy was time dependent, it only reads it for one key date and not according to transaction data.
    Regards,
    Beat

  • I have a new mac book pro (sept 2014) and am suddenly stuck on the log-in screen. Keyboard input not working to enter my password. Already tried a basic restart and a cmmnd/ cntrl/ pwr troubleshoot to no effect.

    I have a new mac book pro (sept 2014) and am suddenly stuck on the log-in screen. Keyboard input is not working to enter my password. Seems to be a log in issue as keyboard works for forced troubleshooting. (And b/c when I first noticed the problem, I was able to enter my log in password but then everything sort of froze. Now, no ability to enter the password.) Already tried a basic restart and a cmmnd/ cntrl/ pwr troubleshoot to no effect.

    Reset PRAM:   http://support.apple.com/kb/PH14222
    Start up in Safe Mode.
    http://support.apple.com/kb/ph14204
    A new Mac is in warranty for 1 year from the date of purchase.
    A new Mac comes with 90 days of free tech support from AppleCare.
    AppleCare: 1-800-275-2273
    Call AppleCare or take it to the Apple store to have it checked out.
    Genius Bar reservation
    http://www.apple.com/retail/geniusbar/
    Best.

  • How to have same keyboards input source in Mac and Windows???

    I use Canadian French-CSA on my Mac keyboards input source. Using Windows 7, I can't find the good setting for my keyboards to be the same when I it keys.
    I run Windows over Parallels Desktop
    Can anybody help?
    Thank you

    Can I use an AirPort Extreme Base Station "n"
    Yes.
    and if so, will my MacBook work with this at maximum download / upload speed (i.e. equivalent to the cable)
    The speed of your internal network generally is much much faster than the speed of your internet connection. Unless he has an internet connection faster than approx 6Mbps then even dropping down to the old 802.11b Airport would not seen any decrease in speed of downloads etc...
    and will my brother's PC's also be able to connect?
    If his PC is 802.11b/g-compliant, it shouldn't have any problems connecting to the AirPort base station.
    Or is there another Airport base station?
    The other AirPorts would work, but the AirPort Express & older 802.11g AirPort Extreme base stations have a max. range of 150 feet.
    OR-- should I head down to "Generic Computer Store" and just by a wireless router (WiFi)(think that's what they call them) and connect this to his cable modem? IF SO WILL THAT WORK FOR MY MAC?
    That is always an option as well, especially since he will be the primary user throughout the year. I'd suggest going with a brand name, like Belkin, D-Link, or Linksys for the wireless router choice.

  • How to use the phone's Mini-Keyboard Input with the 'Textbox'(MIDP2.0)?

    (My apology. My English is not perfect but I'll try my best. >_<)
    Hi. I'm trying to create a textbox(in my own little application) that is compatible with the mini-keyboard input feature.
    This problem involved any device that have a built-in "mini-keyboard".
    Problem:
    I tried the 'Textbox' class from MIDP2.0 but the result, as expected, is like using the phones with no built-in keyboard.
    (Forexample if I want to input the character 'C' inthe text box, I need to press number '2' button three times to let it circle through 'A' -> 'B' then 'C'. )
    Then I tried entering URLs in the phone's built-in web browser, the result is I can use the mini keyboard to type like a PC keyboard.
    Question: How do I implement such textbox that is fully compatible with the built-in mini Keyboard?
    I tried browsing through the MIDP2.0 API but it seems the 'Textbox' class there couldn't do it.
    Thank you. =)
    /bow
    Edit/Delete Message

    The textbox should have input just as any other normal phone input. If not, something strange is going on.
    Anyway , there is no use to make your own input method, since every phone has another implementation of this anyway. It would only confuse users.

Maybe you are looking for

  • How to restrict duplicate condition type in sales order

    Hi All Is there any standard method to restrict user for adding a particular discount condition type more than once in sales order. condition type is manual and its records are also being maitained manually. Else would I will have to create userexit

  • Can I print out the source pages for hyperlinks in a pdf

    http://www.stratishealth.org/documents/ClinicLinkJuly14_R.pdf I have Acrobat X Pro. I've created the above PDF that shows hyperlinks as a clickable "Read more about it...." link. A reader has asked for a PDF that she can print out, yet it would someh

  • IPhoto prompt  "Which photo library do you want iPhoto to use? "

    When I start iPhoto, a small window opens with the prompt, "Which photo library do you want iPhoto to use? " I have previously used iPhoto and am wondering if I should remove and reinstall iPhoto. Please help.

  • Error after downloading a rental film

    Have rented films successfully, but have downloaded 2 films today and when they are ready to watch they come up with the message 'there is an error, please try later'.  They have been downloaded cos it is stating how many days left to view.  Any idea

  • Missing OS for Intel Chipset in driver Matrices of nearly all ThinkPads

    Missing OS for Intel Chipset in driver Matrices of nearly all ThinkPads: Windows Vista, 7 and 8 are not mentioned in the 2nd column Example: R400 T410s R60 Intel Chipset Support for Windows 8 (32-bit, 64-bit), 7 (32-bit, 64-bit), Vista (32-bit, 64-bi