当前位置: 技术问答>java相关
我想知道为什么菜单不能正确显示,在使用paint()函数之后
来源: 互联网 发布时间:2017-04-28
本文导语: -------------------------------------------------------------------------------- 我写了很短的一段代码 但是菜单却不能自动的回缩 我想知道为什么? 我写了一个主jFrame, 还有一个jPanel ,jpanel放在jFrame中 ,可是我不知道为什...
--------------------------------------------------------------------------------
我写了很短的一段代码 但是菜单却不能自动的回缩 我想知道为什么?
我写了一个主jFrame, 还有一个jPanel ,jpanel放在jFrame中 ,可是我不知道为什么在jFrame的菜单栏不能正常的运作, 代码如下: 有两个类
package jinziqi;
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
public class mainFrame extends JFrame {
private JMenuBar jMenuBar1 = new JMenuBar();
private JMenu jMenu1 = new JMenu();
private JMenuItem jMenuItem1 = new JMenuItem();
private JMenuItem jMenuItem2 = new JMenuItem();
private JMenuItem jMenuItem3 = new JMenuItem();
private JMenuItem jMenuItem4 = new JMenuItem();
private JMenu jMenu2 = new JMenu();
private qipan qipan1 = new qipan();
public mainFrame() {
try {
jbInit();
}
catch(Exception e) {
e.printStackTrace();
}
}
private void jbInit() throws Exception {
jMenu1.setText("游戏");
jMenuItem1.setText("开始游戏");
jMenuItem2.setText("暂停游戏");
jMenuItem3.setText("停止游戏");
jMenuItem4.setText("退出游戏");
jMenu2.setText("关于");
this.addWindowListener(new java.awt.event.WindowAdapter() {
public void windowClosing(WindowEvent e) {
this_windowClosing(e);
}
});
jMenuBar1.add(jMenu1);
jMenuBar1.add(jMenu2);
jMenu1.add(jMenuItem1);
jMenu1.add(jMenuItem2);
jMenu1.add(jMenuItem3);
jMenu1.add(jMenuItem4);
setJMenuBar(jMenuBar1);
this.getContentPane().add(qipan1);
}
void this_windowClosing(WindowEvent e) {
this.dispose();
System.exit(0);
}
public static void main(String [] agrs){
mainFrame main = new mainFrame();
main.setSize(200, 250);
main.setLocation(200 , 200);
main.setVisible(true);
}
第二个类
package jinziqi;
import java.awt.*;
import javax.swing.JPanel;
public class qipan extends JPanel {
private BorderLayout borderLayout1 = new BorderLayout();
public qipan() {
try {
jbInit();
}
catch(Exception ex) {
ex.printStackTrace();
}
}
void jbInit() throws Exception {
this.setLayout(borderLayout1);
}
public void paint(Graphics g){
g.setColor(Color.blue);
for( int i= 0 ; i
我写了很短的一段代码 但是菜单却不能自动的回缩 我想知道为什么?
我写了一个主jFrame, 还有一个jPanel ,jpanel放在jFrame中 ,可是我不知道为什么在jFrame的菜单栏不能正常的运作, 代码如下: 有两个类
package jinziqi;
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
public class mainFrame extends JFrame {
private JMenuBar jMenuBar1 = new JMenuBar();
private JMenu jMenu1 = new JMenu();
private JMenuItem jMenuItem1 = new JMenuItem();
private JMenuItem jMenuItem2 = new JMenuItem();
private JMenuItem jMenuItem3 = new JMenuItem();
private JMenuItem jMenuItem4 = new JMenuItem();
private JMenu jMenu2 = new JMenu();
private qipan qipan1 = new qipan();
public mainFrame() {
try {
jbInit();
}
catch(Exception e) {
e.printStackTrace();
}
}
private void jbInit() throws Exception {
jMenu1.setText("游戏");
jMenuItem1.setText("开始游戏");
jMenuItem2.setText("暂停游戏");
jMenuItem3.setText("停止游戏");
jMenuItem4.setText("退出游戏");
jMenu2.setText("关于");
this.addWindowListener(new java.awt.event.WindowAdapter() {
public void windowClosing(WindowEvent e) {
this_windowClosing(e);
}
});
jMenuBar1.add(jMenu1);
jMenuBar1.add(jMenu2);
jMenu1.add(jMenuItem1);
jMenu1.add(jMenuItem2);
jMenu1.add(jMenuItem3);
jMenu1.add(jMenuItem4);
setJMenuBar(jMenuBar1);
this.getContentPane().add(qipan1);
}
void this_windowClosing(WindowEvent e) {
this.dispose();
System.exit(0);
}
public static void main(String [] agrs){
mainFrame main = new mainFrame();
main.setSize(200, 250);
main.setLocation(200 , 200);
main.setVisible(true);
}
第二个类
package jinziqi;
import java.awt.*;
import javax.swing.JPanel;
public class qipan extends JPanel {
private BorderLayout borderLayout1 = new BorderLayout();
public qipan() {
try {
jbInit();
}
catch(Exception ex) {
ex.printStackTrace();
}
}
void jbInit() throws Exception {
this.setLayout(borderLayout1);
}
public void paint(Graphics g){
g.setColor(Color.blue);
for( int i= 0 ; i