
JAVA输出窗口为什么没有菜单栏
publicclassJs{publicstaticvoidmain(Stringargs[]){Windowwin=newWindow("窗口1",60,60,200,...
public class Js{
public static void main(String args[]){
Window win = new Window("窗口1",60,60,200,190);
}
}
import javax.swing.*;
import java.awt.*;
import static javax.swing.JFrame.*;
public class Window extends JFrame{
JMenuBar menubar;
JMenu menu;
JMenuItem item;
JTextField text;
public Window(String s,int x,int y,int w,int h){
init(s);
setLocation(x,y);
setSize(w,h);
setVisible(true);
}
void init(String s){
setTitle(s);
menubar = new JMenuBar();
menu = new JMenu("菜单");
item = new JMenuItem("菜单项",new ImageIcon("a.gif"));
menu.add(item);
text = new JTextField("跳梁小丑",12);
text.setHorizontalAlignment(JTextField.CENTER);
add(text);
}
} 展开
public static void main(String args[]){
Window win = new Window("窗口1",60,60,200,190);
}
}
import javax.swing.*;
import java.awt.*;
import static javax.swing.JFrame.*;
public class Window extends JFrame{
JMenuBar menubar;
JMenu menu;
JMenuItem item;
JTextField text;
public Window(String s,int x,int y,int w,int h){
init(s);
setLocation(x,y);
setSize(w,h);
setVisible(true);
}
void init(String s){
setTitle(s);
menubar = new JMenuBar();
menu = new JMenu("菜单");
item = new JMenuItem("菜单项",new ImageIcon("a.gif"));
menu.add(item);
text = new JTextField("跳梁小丑",12);
text.setHorizontalAlignment(JTextField.CENTER);
add(text);
}
} 展开
3个回答
展开全部
你的JMenu和JMenuBar没有加入到JFrame中.在init(String s)函数中最后面加两句menubar.add(menu); setJMenuBar(menubar);就行了.
完整的程序如下:(改动的地方见注释)
//Js.java文件
public class Js{
public static void main(String args[]){
Window win = new Window("窗口1",60,60,200,190);
}
}
//Window.java文件
import javax.swing.*;
import javax.swing.JFrame;
public class Window extends JFrame{
JMenuBar menubar;
JMenu menu;
JMenuItem item;
JTextField text;
public Window(String s,int x,int y,int w,int h){
init(s);
setLocation(x,y);
setSize(w,h);
setVisible(true);
}
void init(String s){
setTitle(s);
menubar = new JMenuBar();
menu = new JMenu("菜单");
item = new JMenuItem("菜单项",new ImageIcon("a.gif"));
menu.add(item);
text = new JTextField("跳梁小丑",12);
text.setHorizontalAlignment(JTextField.CENTER);
add(text);
menubar.add(menu);//这里加一句
setJMenuBar(menubar);//这里加一句
}
}
完整的程序如下:(改动的地方见注释)
//Js.java文件
public class Js{
public static void main(String args[]){
Window win = new Window("窗口1",60,60,200,190);
}
}
//Window.java文件
import javax.swing.*;
import javax.swing.JFrame;
public class Window extends JFrame{
JMenuBar menubar;
JMenu menu;
JMenuItem item;
JTextField text;
public Window(String s,int x,int y,int w,int h){
init(s);
setLocation(x,y);
setSize(w,h);
setVisible(true);
}
void init(String s){
setTitle(s);
menubar = new JMenuBar();
menu = new JMenu("菜单");
item = new JMenuItem("菜单项",new ImageIcon("a.gif"));
menu.add(item);
text = new JTextField("跳梁小丑",12);
text.setHorizontalAlignment(JTextField.CENTER);
add(text);
menubar.add(menu);//这里加一句
setJMenuBar(menubar);//这里加一句
}
}
更多追问追答
追问
请问init在这是什么意思
追答
init是initial的开头字母,意思是初始化的意思,
在Applet中init()是自动执行的,在Application应用程序中是自动执行构造函数的,在你的程序中是Window(String s,int x,int y,int w,int h)函数.所以在Application应用程序中,你需要在构造函数中,调用一下init()函数来初始化JFrame中的各个组件.
展开全部
public class Js{
public static void main(String args[]){
Window win = new Window("窗口1",60,60,200,190);
}
}
import javax.swing.*;
import java.awt.*;
import static javax.swing.JFrame.*;
public class Window extends JFrame{
JMenuBar menubar;
JMenu menu;
JMenuItem item;
JTextField text;
public Window(String s,int x,int y,int w,int h){
init(s);
setLocation(x,y);
setSize(w,h);
setVisible(true);
setJMenuBar(menubar);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
void init(String s){
setTitle(s);
menubar = new JMenuBar();
menu = new JMenu("菜单");
item = new JMenuItem("菜单项",new ImageIcon("a.gif"));
menubar.add(menu);
menu.add(item);
text = new JTextField("跳梁小丑",12);
text.setHorizontalAlignment(JTextField.CENTER);
add(text);
}
}
首先menubar 没有把menu添加进去 其次 没有设置JFrame 的setJMenuBar的属性
public static void main(String args[]){
Window win = new Window("窗口1",60,60,200,190);
}
}
import javax.swing.*;
import java.awt.*;
import static javax.swing.JFrame.*;
public class Window extends JFrame{
JMenuBar menubar;
JMenu menu;
JMenuItem item;
JTextField text;
public Window(String s,int x,int y,int w,int h){
init(s);
setLocation(x,y);
setSize(w,h);
setVisible(true);
setJMenuBar(menubar);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
void init(String s){
setTitle(s);
menubar = new JMenuBar();
menu = new JMenu("菜单");
item = new JMenuItem("菜单项",new ImageIcon("a.gif"));
menubar.add(menu);
menu.add(item);
text = new JTextField("跳梁小丑",12);
text.setHorizontalAlignment(JTextField.CENTER);
add(text);
}
}
首先menubar 没有把menu添加进去 其次 没有设置JFrame 的setJMenuBar的属性
追问
请问init在这是什么意思
追答
做初始化用的一个方法,主要用来初始化一些想页面一加载就能看见的东西
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
请问你那个init函数要什么时候执行?
看看书上的例子或看看eclipse或netbeans 的gui设计器生成的代码.
看看书上的例子或看看eclipse或netbeans 的gui设计器生成的代码.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询