连接标题 "GetTitle().Concat(GetTitle()));"
Concat a Title "GetTitle().Concat(GetTitle()));"
今天我尝试在 Java 上做一个 "Window" 的例子。我尝试连接标题,但我的 "GetTitle()" 不起作用!谁能帮我解决这个问题?
以及为什么 "public class MiVentana extends JFrame {" 和 "MiVentana Frame = new MiVentana("Titulo");"说警告?
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class MiVentana extends JFrame {
public MiVentana (String Titulo){
this.setTitle(Titulo);
this.setSize(300,400);
this.setLocation(160,80);
this.setLayout(new FlowLayout());
this.ConfigurarVentana();
this.setVisible(true);
}
public void ConfigurarVentana(){
JPanel panel = new JPanel();
JButton boton = new JButton ("OK");
boton.addActionListener(new EscuchadorBoton());
panel.add(boton);
this.add(panel);
}
class EscuchadorBoton implements ActionListener{
public void actionPerformed(ActionEvent a){
this.setTitle(this.getTitle().concat(this.getTitle()));
}
}
public static void main(String[] args) {
MiVentana Frame = new MiVentana("Titulo");
//frameTest.setVisible(true);
}
}
编辑:我正在研究 Ubuntu 14.04 IDE Eclipse 3.8
在 ActionListener
中使用 this
指的是 EscuchadorBoton
侦听器,而不是 MiVentana
的实例 - 您的 JFrame
.
使用 MiVentana.this
应该指的是 window,而不是侦听器,您将能够用它来获取和设置标题。
This post 更好地描述了正在发生的事情 - 基本上你想要 this
来自封闭的 class,而不是封闭的 class.
基本上不是这样做:
this.setTitle(this.getTitle().concat(this.getTitle()));
您需要这样做:
MiVentana.this.setTitle(MiVentana.this.getTitle().concat(MiVentana.this.getTitle()));
今天我尝试在 Java 上做一个 "Window" 的例子。我尝试连接标题,但我的 "GetTitle()" 不起作用!谁能帮我解决这个问题?
以及为什么 "public class MiVentana extends JFrame {" 和 "MiVentana Frame = new MiVentana("Titulo");"说警告?
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class MiVentana extends JFrame {
public MiVentana (String Titulo){
this.setTitle(Titulo);
this.setSize(300,400);
this.setLocation(160,80);
this.setLayout(new FlowLayout());
this.ConfigurarVentana();
this.setVisible(true);
}
public void ConfigurarVentana(){
JPanel panel = new JPanel();
JButton boton = new JButton ("OK");
boton.addActionListener(new EscuchadorBoton());
panel.add(boton);
this.add(panel);
}
class EscuchadorBoton implements ActionListener{
public void actionPerformed(ActionEvent a){
this.setTitle(this.getTitle().concat(this.getTitle()));
}
}
public static void main(String[] args) {
MiVentana Frame = new MiVentana("Titulo");
//frameTest.setVisible(true);
}
}
编辑:我正在研究 Ubuntu 14.04 IDE Eclipse 3.8
在 ActionListener
中使用 this
指的是 EscuchadorBoton
侦听器,而不是 MiVentana
的实例 - 您的 JFrame
.
使用 MiVentana.this
应该指的是 window,而不是侦听器,您将能够用它来获取和设置标题。
This post 更好地描述了正在发生的事情 - 基本上你想要 this
来自封闭的 class,而不是封闭的 class.
基本上不是这样做:
this.setTitle(this.getTitle().concat(this.getTitle()));
您需要这样做:
MiVentana.this.setTitle(MiVentana.this.getTitle().concat(MiVentana.this.getTitle()));