Java JList未出现

Java JList未出现,java,applet,jlist,Java,Applet,Jlist,在我做的每一份清单上。。。我必须在任何JList出现之前单击它。就像。。。看不见但仍然存在。。。直到我点击它 我试过list.setVisible(true)等等。。。但是运气不好帮助是的,我试过Javadoc、Google等搜索工具我从来没有遇到过这样的问题 代码: import java.applet.applet; 导入java.awt.*; 导入javax.swing.*; 导入javax.swing.JList; 导入java.awt.event.*; 导入java.util.Arra

在我做的每一份清单上。。。我必须在任何JList出现之前单击它。就像。。。看不见但仍然存在。。。直到我点击它

我试过
list.setVisible(true)
等等。。。但是运气不好帮助是的,我试过Javadoc、Google等搜索工具我从来没有遇到过这样的问题

代码:

import java.applet.applet;
导入java.awt.*;
导入javax.swing.*;
导入javax.swing.JList;
导入java.awt.event.*;
导入java.util.ArrayList;
导入java.io.*;
导入java.util.*;
公共类清单扩展JApplet实现MouseListener{
公共静态字符串换行符;
公共静态列表;
int gold=123;
公共void init(){
ArrayList arr=新的ArrayList();
协议添加(“短柄斧”);
arr.add(“剑”);
arr.add(“盾”);
协议添加(黄金+黄金);
System.out.println(“您的库存中有“+arr.size()+”项”);
展示库存(arr);
列表=新JList(arr.toArray());
添加(列表);
list.addMouseListener(本);
list.setVisible(true);
}
公共静态无效显示清单(ArrayList){
对于(int i=0;i
您必须从代码中删除此部分:

public void paint(Graphics g) {

}

基本上,您的问题是使用空方法覆盖paint方法。这就是列表在开始时未正确显示的原因。

您必须从代码中删除此部分:

public void paint(Graphics g) {

}

基本上,您的问题是使用空方法覆盖paint方法。这就是列表在开始时未正确显示的原因。

或者如果要覆盖绘制方法,请将其替换为:

public void paint(Graphics g) {
   super.paint(g);
   // your code
}

或者,如果要替代绘制方法,请将其替换为:

public void paint(Graphics g) {
   super.paint(g);
   // your code
}

您可以添加
this.setVisible(true)init()方法末尾的code>行

list.addMouseListener(this);

list.setVisible(true);
this.setVisible(true);

您可以添加
this.setVisible(true)init()方法末尾的code>行

list.addMouseListener(this);

list.setVisible(true);
this.setVisible(true);