2017-09-15 20 views
1

계산기를 만들려고하고 있는데 JTextField에 문제가 있습니다. 1,2,3,4,5와 같은 숫자 (JButtons)를 클릭하면 54321과 같은 JTextField에 나타납니다. 따라서 어떻게 54321 대신 12345를 표시 할 수 있습니까? 당신이 질문을하기 전에 당신은 정말 이것에 대해JTextField 번호가 왼쪽에서 오른쪽

public void actionPerformed(ActionEvent e) { 

    JButton clickedButton = (JButton) e.getSource(); 


    String displayValue = parent.getDisplayValue(); 

    String clickedBtnValue = clickedButton.getText(); 

    parent.setDisplayValue(clickedBtnValue + displayValue); 

contentPane = new JPanel(); 
    textField = new JTextField(30); 
    textField.setAlignmentX(Component.LEFT_ALIGNMENT); 
    contentPane.add(textField); 
    textField.setHorizontalAlignment(JTextField.RIGHT); 
    textField.setBounds(10, 11, 152, 32); 
    textField.setColumns(1); 
    textField.setComponentOrientation(ComponentOrientation.LEFT_TO_RIGHT); 
    textField.addActionListener(eng); 
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
    setBounds(100, 100, 184, 312); 

    contentPane.setBorder(new EmptyBorder(5, 5, 5, 5)); 
    setContentPane(contentPane); 
    contentPane.setLayout(null); 

답변

0

을 생각 했습니까? - 버튼 텍스트가 기존의 텍스트 앞에 추가됩니다

parent.setDisplayValue(clickedBtnValue + displayValue); 

를 코드는 당신이 그것을 말해 정확히하고있다 : 당신은 당신의 코드가 무엇을하고 있는지 이해해야 있도록

당신은 당신의 코드를 제어 할 수 있습니다.

당신이 그런 식으로 표시 좋아하지 않는 경우에 당신이 시도 할 수 있습니다 : 당신이 더 나은 솔루션을 원하는 경우에

parent.setDisplayValue(displayValue + clickedBtnValue); 

, 당신은 replaceSelection(...) 방법을 사용할 수 있습니다에서 입증 된 바와 같이 : How to add a shortcut key for a jbutton in java?

+0

@Sinclair, 네, 그건 오타였습니다. – camickr

+0

오. 나는 한달 동안 초보자이기 때문에 내가 물어보기 전에 3 일 동안 고생했다. 대답 해줘서 고마워! :) –