Java图形界面不能正常显示
代码如下importjava.awt.*;importjavax.swing.*;publicclassGUIExample{publicstaticvoidmain(S...
代码如下
import java.awt.*;
import javax.swing.*;
public class GUIExample{ public static void main(String [] args){ MyFrame myFrame=new MyFrame(); }}class MyFrame extends JFrame{ int width=500,height=400; public MyFrame() { Toolkit kit=Toolkit.getDefaultToolkit(); setLocation((kit.getScreenSize().width-width)/2, (kit.getScreenSize().height-height)/2); setSize(width, height); setVisible(true); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); Container con=this.getContentPane(); MyPanel1 p1=new MyPanel1(); MyPanel2 p2=new MyPanel2(); MyPanel3 p3=new MyPanel3(); p1.setBounds(10, 5, 480, 30); p2.setBounds(10, 35, 240, 360); p3.setBounds(250, 35, 240, 360); con.add(p1,BorderLayout.NORTH); con.add(p2,BorderLayout.WEST); con.add(p3,BorderLayout.EAST); } public class MyPanel1 extends JPanel{ public MyPanel1() { setBackground(Color.black); setVisible(true); } } public class MyPanel2 extends JScrollPane{ public MyPanel2(){ setBackground(Color.yellow); setVisible(true); } } public class MyPanel3 extends JPanel{ public MyPanel3(){ setBackground(Color.green); setVisible(true); } }}
但是运行的时候显示的大部分情况跟图中一样,很少数情况会显示出中间容器和颜色,为什么 展开
import java.awt.*;
import javax.swing.*;
public class GUIExample{ public static void main(String [] args){ MyFrame myFrame=new MyFrame(); }}class MyFrame extends JFrame{ int width=500,height=400; public MyFrame() { Toolkit kit=Toolkit.getDefaultToolkit(); setLocation((kit.getScreenSize().width-width)/2, (kit.getScreenSize().height-height)/2); setSize(width, height); setVisible(true); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); Container con=this.getContentPane(); MyPanel1 p1=new MyPanel1(); MyPanel2 p2=new MyPanel2(); MyPanel3 p3=new MyPanel3(); p1.setBounds(10, 5, 480, 30); p2.setBounds(10, 35, 240, 360); p3.setBounds(250, 35, 240, 360); con.add(p1,BorderLayout.NORTH); con.add(p2,BorderLayout.WEST); con.add(p3,BorderLayout.EAST); } public class MyPanel1 extends JPanel{ public MyPanel1() { setBackground(Color.black); setVisible(true); } } public class MyPanel2 extends JScrollPane{ public MyPanel2(){ setBackground(Color.yellow); setVisible(true); } } public class MyPanel3 extends JPanel{ public MyPanel3(){ setBackground(Color.green); setVisible(true); } }}
但是运行的时候显示的大部分情况跟图中一样,很少数情况会显示出中间容器和颜色,为什么 展开
2个回答
展开全部
package examples;
import java.awt.Color;
import java.awt.Container;
import java.awt.Toolkit;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class GUIExample {
public static void main(String[] args) {
MyFrame myFrame = new MyFrame();
}
static class MyFrame extends JFrame {
int width = 500, height = 400;
public MyFrame() {
Toolkit kit = Toolkit.getDefaultToolkit();
setLocation((kit.getScreenSize().width - width) / 2,
(kit.getScreenSize().height - height) / 2);
setSize(width, height);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Container container = this.getContentPane();
JPanel p1 = new JPanel();
p1.setBackground(Color.BLACK);
JPanel p2 = new JPanel();
p2.setBackground(Color.YELLOW);
JPanel p3 = new JPanel();
p3.setBackground(Color.GREEN);
p1.setBounds(10, 5, 480, 30);
p2.setBounds(10, 35, 240, 360);
p3.setBounds(250, 35, 240, 360);
container.add(p1);
container.add(p2);
container.add(p3);
setVisible(true);
}
}
}
更多追问追答
追问
为什么自己声明JPanel1,JPanel2,JPanel3就不行呢,刚刚点错了,把上面那个弄成满意回答了,希望你别嫌没分了就不帮我了。。。关键是有的时候那个界面显示是正常的,有的时候就什么都没有,正常的几率在几十分之一吧
追答
是你的布局代码有问题。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询