java 更改标题栏中的文本

声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow 原文地址: http://stackoverflow.com/questions/5424157/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me): StackOverFlow

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-10-30 11:03:25  来源:igfitidea点击:

Changing the text in the title bar

javauser-interface

提问by Mike

I'm getting an error at the line: jFrame cannot be resolved

我在一行中收到错误消息:无法解析 jFrame

jFrame.setTitle(titleName.getText());





    public void createOption(){
        Option = new JPanel();
        Option.setLayout( null );

         JLabel TitleLabel = new JLabel("Change the company name");
         TitleLabel.setBounds(140, 15, 200, 20);
         Option.add(TitleLabel);
         titleName = new JTextField();
         titleName.setBounds(90,40,260,20);
           Option.add(titleName);

           JButton Change = new JButton("Change New Name");
           Change.setBounds(90,80,150,20);
           Change.addActionListener(this);
           Change.setBackground(Color.white);
           Option.add(Change);

           JButton Exit = new JButton("Exit");
           Exit.setBounds(270,80,80,20);
           Exit.addActionListener(this);
           Exit.setBackground(Color.white);
           Option.add(Exit);

           Change.addActionListener(new ActionListener() { 

                public void actionPerformed(ActionEvent arg0) { 
                    jFrame.setTitle(titleName.getText()); 

                } 
            });

}

回答by Bala R

You will have to have a reference to your JFrame. Assuming button and textBox for the names for the controls, you can do

您将必须引用您的 JFrame。假设控件名称的按钮和文本框,你可以做

    button.addActionListener(new ActionListener() {

        @Override
        public void actionPerformed(ActionEvent arg0) {
            jFrame.setTitle(textBox.getText());

        }
    });

EDIT:

编辑:

Here's a full example

这是一个完整的例子

import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.*;

public class JFrameExample {
  public static void main(String[] args) {
    final JFrame jFrame = new JFrame("This is a test");
    jFrame.setSize(400, 150);
    Container content = jFrame.getContentPane();
    content.setBackground(Color.white);
    content.setLayout(new FlowLayout()); 
    final JTextField jTextField = new JTextField("TestTitle");
    content.add(jTextField);
    final JButton button = new JButton("Change");
    button.addActionListener(new ActionListener() {

        @Override
        public void actionPerformed(ActionEvent arg0) {
            jFrame.setTitle(jTextField.getText());

        }
    });
    content.add(button);
    jFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    jFrame.setVisible(true);
  }