在活动期间更新JLabel的标签文本 - Swing

Jav*_*ner 2 java swing jlabel

基本上我想在点击"生成PDF记录簿"按钮的过程中更改JLabel的标签文本

在此输入图像描述

从前面的例子说:

label.setText("new value");
Run Code Online (Sandbox Code Playgroud)

当我这样做时,标签值根本没有变化,请给我一些指示,谢谢

初始化();

JLabel lblNewLabel = new JLabel("513 k bytes");
    lblNewLabel.setBounds(407, 713, 151, 14);
    frmViperManufacturingRecord.getContentPane().add(lblNewLabel);
Run Code Online (Sandbox Code Playgroud)

在" 生成PDF记录簿"按钮上单击

        JButton btnGeneratePdfHeader = new JButton("Generate PDF Record Book");
    btnGeneratePdfHeader.setMnemonic('G');
    btnGeneratePdfHeader.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent arg0) {

            final JLabel lblNewLabel = new JLabel("513 k bytes");

            //java.io.File file = new java.io.File(strdfile);
            //lblNewLabel.setSize(file.length());
            //System.out.println(file.length());

            String fileSize = file.length() + " k bytes";
            System.out.println("I am here");

            lblNewLabel.setText("new value");
        }
    });
Run Code Online (Sandbox Code Playgroud)

Mar*_*arv 5

JLabel按下按钮时创建新的,然后将该标签的文本设置为"新值"

final JLabel lblNewLabel = new JLabel("513 k bytes");
lblNewLabel.setText("new value");
Run Code Online (Sandbox Code Playgroud)

而不是更改UI上标签的文本.您需要调用setText("new value")对已添加到UI的标签的引用.例如,该标签必须是您的UI类中的一个字段,例如final JLabel fileSizeLabel,您可以通过调用来设置标签文本

fileSizeLabel.setText("new value");
Run Code Online (Sandbox Code Playgroud)

在按钮动作监听器内.