0
nullレイアウトを使用しないとわかっています。しかし、現時点で私は何かをテストするために使っています。私のプログラムは簡単です:メキシコのボタンを押して、Diploボタンを表示させてください。問題は、私がDiploボタンの上にマウスをスクロールした後で、mexボタンのテキストがその上に表示されることです。私は現在、私の問題は何とかnullのレイアウト、paintcomponentを使用していない、またはメソッドの何かを含んでいると仮定していますが、何が間違っているのか分かりません。JButton上にカーソルを置いたときに不要なテキストが表示される
import javax.swing.JButton;
import javax.swing.JPanel;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.awt.Graphics;
import java.awt.Dimension;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class PanelTest extends JPanel
{
//Country Lists
public Country Mex = new Country("Mexico","Empire",15);
public Country Sel;
//Country buttons
public JButton buttonMex;
//Foreign Choices
private JButton buttonAggro;
public JButton buttonDip;
private JButton buttonEspo;
public PanelTest(){
setLayout(null);
//Definitions for button
buttonDip = new JButton();
buttonDip.setForeground(Color.BLACK);
buttonDip.setFont(new Font("Serif", Font.BOLD, 20));
buttonDip.setText("Diplo");
buttonDip.addActionListener(new DipListener());
buttonDip.setSize(100, 50);
buttonDip.setLocation(0,100);
buttonDip.setBorder(null);
buttonDip.setOpaque(false);
buttonDip.setContentAreaFilled(false);
buttonDip.setBorderPainted(false);
buttonDip.setFocusPainted(false);
add(buttonDip);
buttonDip.setEnabled(false);
buttonDip.setVisible(false);
buttonMex = new JButton();
buttonMex.setForeground(Color.BLACK);
buttonMex.setFont(new Font("Serif", Font.BOLD, 20));
buttonMex.setText("Mexico");
buttonMex.addActionListener(new MexListener());
buttonMex.setSize(100, 50);
buttonMex.setLocation(0,0);
buttonMex.setBorder(null);
buttonMex.setOpaque(false);
buttonMex.setContentAreaFilled(false);
buttonMex.setBorderPainted(false);
buttonMex.setFocusPainted(false);
add(buttonMex);
buttonMex.setEnabled(false);
buttonMex.setVisible(false);
//MAIN
buttonValid();
}
public void paintComponent(Graphics g)
{
}
public void buttonValid(){
if(Mex.getVal() == true){
buttonMex.setEnabled(true);
buttonMex.setVisible(true);
}
}
public void FTest()
{
buttonMex.setEnabled(false);
buttonMex.setVisible(false);
buttonDip.setEnabled(true);
buttonDip.setVisible(true);
}
private class MexListener implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
FTest();
Sel = Mex;
}
}
private class DipListener implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
Mex.setRel(-30);
}
}
ここに私のプログラムは