버튼을 누르면 라벨이 텍스트로 바뀌길 원합니다. 하지만 단추를 클릭 할 때 레이블에 setText()를 사용하려고하면 인식하지 못합니다.자바 - 버튼의 라벨 텍스트 변경하기
public class SingleButton JPanel을 확장합니다. ActionListener를 구현합니다. { protected JButton b1;
:
public SingleButton() {
ImageIcon leftButtonIcon = createImageIcon("images/right.gif");
ImageIcon middleButtonIcon = createImageIcon("images/middle.gif");
ImageIcon rightButtonIcon = createImageIcon("images/left.gif");
b1 = new JButton("Axxxxxx"/*, leftButtonIcon*/);
b1.setVerticalTextPosition(AbstractButton.CENTER);
b1.setHorizontalTextPosition(AbstractButton.LEADING); //aka LEFT, for left-to-right locales
b1.setMnemonic(KeyEvent.VK_D);
b1.setActionCommand("enableb1");
b1.setEnabled(true);
//Listen for actions on all buttons.
b1.addActionListener(this);
b1.setToolTipText("Click for a UPNs");
JLabel labelUpn = new JLabel("UPN number here on button press");
//Add Components to this container, using the default FlowLayout.
add(b1);
add(labelUpn);
labelUpn.setText("UPN number here");
}
public void actionPerformed(ActionEvent e) {
if ("enableb1".equals(e.getActionCommand())) {
b1.setEnabled(false);
labelUpn.setText("New Text");
}
}
최소에있다 당신은 actionPerformed 메소드에서 Button_name.setText ("텍스트")라고하지 않았다 - 여전히 같은 문제를 생산하고 가능한 한 적은 코드를 사용합니다. 모든 코드를 표시하지 않으면 문제를 재현 할 수 없습니다. – PerfectContrast
** ** ** ** ** ** ** ** 버튼만으로 동일한 유형의 코드를 작성하십시오. 문제가 재현되면 MVCE를 얻지 못하면 실제 코드와 비교하여 차이점을 찾으십시오. –
[mcve]를 게시하십시오. 우리는 github 프로젝트를 보지 않을 것입니다. – Reimeus