计算机类
公务员类
工程类
语言类
金融会计类
计算机类
医学类
研究生类
专业技术资格
职业技能资格
学历类
党建思政类
计算机等级考试(NCRE)
全国计算机应用水平考试(NIT)
计算机软件水平考试
计算机等级考试(NCRE)
全国高校计算机等级考试CCT
行业认证
信息素养
计算机等级考试二级
计算机等级考试一级
网络工程师(计算机等级考试四级)
计算机等级考试二级
数据库工程师(计算机等级考试四级)
计算机等级考试三级
信息安全工程师(计算机等级考试四级)
嵌入式系统开发工程师(计算机等级考试四级)
软件测试工程师(计算机等级考试四级)
Java语言程序设计
Python语言程序设计
WPS Office高级应用与设计
C语言程序设计
C++语言程序设计
Java语言程序设计
Visual Basic语言程序设计
Web程序设计
Access数据库程序设计
MySQL数据库程序设计
Visual FoxPro数据库程序设计
办公软件高级应用
问答题下面是一个Applet程序,其功能是用一组坐标点绘制一个多边形,并通过沿坐标的垂直方向移动,把它移到窗口的下半部分,然后填充它。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果。 注意:不改动程序的结构,不得增行或删行。 源程序文件清单如下: import java.awt.*; import java.applet.*; /* <applet code="ex11_3.class" width=800 height=400> </applet> */ public class ex11_3 extends Applet { int[] x = {15,50,100,160,120,190}; int[] y = {15,100,30, 15, 80, 50}; public void init() { setBackground(Color.lightGray); } public void paint(Graphics g) { int[] y2 = new int[6]; g.setColor(Color.red); Rectangle rect = getBounds(); {{U}}g.drawPolygon(x, y2,6){{/U}}; for(int i=0; i<6; i++) {{U}}y2[i] = y[i] + (rect.height / 2){{/U}}; {{U}}g.fillPolygon(x,y, 6);{{/U}} } } {{B}}ex11_3.html{{/B}} <HTML> <HEAD> <TITLE>ex11_3</TITLE> </HEAD> <BODY> <applet code="ex11_3.class" width=800 height=400> </applet> </BODY> </HTML>
进入题库练习
问答题下面是一个Applet程序,其功能是对输入的字符串进行抽取。要求给出抽取的子串在母串中的起始和终止位置,输出抽取出来的子串。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果。注意:不改动程序的结构,不得增行或删行。程序运行结果如下:importjava.awt.*;importjava.applet.*;publicclassex26_3extendsApplet{TextFieldtf1;TextFieldtf2;TextFieldtf3;Buttonbtn;StringstrResult;publicvoidinit(){Label1=newLabel("字符串:");add(l);tf1=newTextField(20);add(tf1);l=newLabel("开始位置:");add(l);tf2=newTextField(5);add(tf2);l=newLabel("结束位置:");add(l);tf3=newTextField(5);add(tf3);btn=newButton("抽取");add(btn);strResult="".resize(250,200);}publicvoidpaint(Graphicsg){g.drawString("选中的子串为:",80,140);{{U}}g.drawString(strResult,80,140);{{/U}}}publicbooleanaction(Evente,Objecto){if(o=="抽取"){try{Stringstr1=tf1.getText();Stringstr2=tf2.getText();Stringstr3=tf3.getText();intfrom=Integer.parseInt(str2);int{{U}}to=Integer.parseInt(str1);{{/U}}{{U}}strResult=str1.substring(from,to-1);{{/U}}}catch(StringIndexOutOfBoundsExceptionse){strResult="字符索引越界!";}repaint();returntrue;}elsereturnfalse;}}{{B}}ex26_3.htm1{{/B}}<HTML><HEAD><TITLE>ex26_3</TITLE></HEAD><BODY><appletcode="ex26_3.class"width=800height=400></applet></BODY></HTML>
进入题库练习
问答题本程序监听用户对单选按钮的选择。窗口中有一个文字标签和一组单选按钮,选中任意一个单选按钮后,文字标签中将显示出你所做出的选择,例如你选择了“四川”,则文字标签将显示为“你来自四川?”,如图所示。importjava.awt.*;importjava.awt.event.*;importjavax.swing.*;importjavax.swing.event.*;publicclassexam_42{publicstaticvoidmain(String[]args){RadioButtonFrameframe=newRadioButtonFrame();frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);frame.show();}}classRadioButtonFrameextendsJFrame{publicRadioButtonFrame(){setTitle("exam_42");setSize(WIDTH,HEIGHT);ContainercontentPane=getContentPane();myLabel=newJLabel("你来自北?",JLabeI.CENTER);contentPane.add(myLabel,BorderLayout.CENTER);radioPanel=newJPanel();myButtonGroup=______;addRadioButton("北京",true,"北京");addRadioButton("天津",false,"天津");addRadioButton("上海",false,"上海");addRadioButton("四川",false,"四川");contentPane.add(radioPanel,BorderLayout.SOUTH);}publicvoidaddRadioButton(Stringname,booleandefaultRadio,Stringshow){finalStringshowLabel=show;JRadioButtonbutton=______;myButtonGroup.add(button);radioPanel.add(button);button.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEventevt){myLabel.setText("你来自"+showLabel+"?");}});}publicstaticfinalintWIDTH=300;publicstaticfinalintHEIGHT=140;privateJLabelmyLabel;privateButtonGroupmyButtonGroup;privateJPanelradioPanel;}
进入题库练习
问答题本题程序的功能是求两个交叉图形的并、减、交及异或。窗口中有4个单选按钮和一个图形面板,面板中有两个交叉的图形,选中其中一个单选按钮,图形面板中会以黑色填充的方式显示运算的结果。请将下述程序补充完整(注意:不得改动程序的结构,不得增行或删行)。 import java.awt.*; import java.awt.event.*; import java.awt.geom.*; import java.util.*; import javax.swing.*; public class advance public static void main(String[] args) JFrame frame = new AreaTestFrame(); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.show(); class AreaTestFrame extends JFrame public AreaTestFrame() setTitle("advance"); setSize(WIDTH,HEIGHT); area1 = new Area(new Ellipse2D.Double(100,100,150,100)); area2 = new Area(new Rectangle2D.Double(150,150,150,100)); ______; panel = new JPanel() public void paintComponent(Graphics g) super.paintComponent(g); Graphics2D g2 = (Graphics2D)g; g2.draw(area1); g2.draw(area2); if (area ! = null) g2.fill(area); contentPane.add(panel,BorderLayout.CENTER); JPanel buttonPanel = new JPanel(); ButtonGroup group = new ButtonGroup(); JRadioButton addButtoh = new JRadioButton("并",false); buttonPanel.add(addButton); group.add(addButton); addButton.addActionListener(new ActionListener() public void actionPerformed(ActionEvent event) area = new Area(); area.add(area1); area.add(area2); panel.repaint(); ); JRadioButton subtractButton = new JRadioButton("减",false); buttonPanel.add(subtractButton); group.add(subtractButton); subtractButton.addActionListener(new ActienListener() public void actionPerformed(ActionEvent event) area = new Area(); area.add(areal); ______; panel.repaint(); ); JRadioButton intersectButton = new JRadioButton("交",false); buttonPanel.add(intersectButton); group.add(intersectButton); intersectButton.addActionListener(new ActionListener() public void actionPerformed(ActionEvent event) area = new Area(); area.add(area1); area.intersect(area2); panel.repaint(); ); JRadioButten exclusiveOrButton = new JRadioButton("异或",false); buttonPanel.add(exclusiveOrButton); group.add(exclusiveOrButton); exclusiveOrButton.addActionListener(new ActionListener() public void actionPerformed(ActionEvent event) area = new Area(); area.add(area1); ______; panel,repaint (); ); contentPane.add(buttonPanel,BorderLayout.NORTH); private JPanel pane1; private Area area; private Area area1; private Area area2; private static final int WIDTH = 400; private static final int HEIGHT = 400;
进入题库练习
问答题本题程序的功能是随机产生50个0~100间的随机数,并计算70~80间随机数的个数(包括70,不包括80)。请将下述程序补充完整(注意:不得改动程序的结构,不得增行或删行)。 public class basic { public static void main(String[] args) { int result = 0; int i = 0; int randomNum; while (i<50) { randomNum =______; if(______) result ++; ______; } System.out.println("result =" + result); } }
进入题库练习
问答题下列程序中,定义了3个变量1,s,b,类型分别为long,short,byte并赋了初始值,分别为-1,1,-1,要求对1做按位左移运算,对s做按位右移运算,对b做无符号按位右移运算,移动的位数均为10位。请将程序补充完整。 程序运行结果如下: -1024 0 -1 public class ex8_1 { public static void main(String[]args) { long 1:-1; ___________; System.out.println(1); short s = 1; ___________; System.out.println(s); byte b =-1; __________; System.out.println(b); } }
进入题库练习
问答题简单应用题 请完成下列Java程序:建立一个String类型的数组,实现该数组的自然排序,并输出结果。该数组采用直接初始化,大小不限。(提示:使用Collections接口。) 注意:请勿改动main()主方法和其他已有语句内容,仅在下划线处填入适当的语句。 程序运行结果如下: fang liu ouyang sun wu zhang import java.util.*; public class ex5_2 { public static void main(String[] args) { Vector vName=new Vector(); String[] strName={"zhang","sun","wu","liu","fang","ouyang"}; for(int i=0;i
进入题库练习
问答题本题读取用户输入的字符流,直到用户输入字符串quit后结束。 import java.io.*; public class java1 public static void main(String[]args) ______; BufferedReader in; ir=new InputStreamReader(System.in); in=new BufferedReader(ir); System.out.println("please input:"); while(______) try String s=in.readLine(); System.out.println("echo:"+s); if(s.equals("quit")) ______; catch(Exception e)
进入题库练习
问答题本题的功能是展示4种不同的对话框。窗口中有4个按钮:“消息”、“输入”、“确定”和“选择”,单击任意一个按钮,就能弹出一个对应的对话框。其中,消息对话框只有一个提示信息和一个“确定”按钮,输入对话框有一个供输入的文本框及“确定”和“撤销”两个按钮;确定对话框中有一个提示信息和三个按钮“是”、“否”和“撤销”;而选择对话框中有一个提示信息和两个按钮“确定”和“取消”。 import javax.swing.*; import java.awt.event.*; import java.awt.*; public class java3 extends JFrame implements ButtonSelecteActionListener JButton btnMessage=new JButton("消息"); JButton btnInput=new JButton("输入"); JButton btnConfirm=new JButton("确认"); JButton btnOption=new JButton("选择"); public java3() super("java3"); btnMessage.addActionListener(this); btnInput.addActionListener(this); btnConfirm.addActionListener(this); btnOption.addActionListener(this); getContentPane().setLayout(new FlowLayout()); getContentPane().add(btnMessage); getContentPane().add(btnInput); getContentPane().add(btnConfirm); getContentPane().add(btnOption); addWindowListener(new WindowAdapter() public void windowClosing(WindowEvent e) System.exit(0); ); public static void main(String args[]) java3 fr=new java3(); fr.pack(); fr.setVisible(true); Public void actionperformed(ActionEvent e) Object[]opt="确认","取消"; JButton instance=(JButton)e.getObject(); if(instance==btnMessage) JOptionPane.sbowMessageDialog(this,"消息对话框"); else if(instance==btnInput) JOptionPane.showInputDialog(this,"输入对话框"); else if(instance==btnConfirm) JOptionPane.showConfirmDialog(this,"确认对话框"); else JOptionPane.showOptionDialog(this,"选择对话框","选择",JOptionPane.YES_OPTION,JOptionPane,QUESTION_MESSAGE,null,opt,opt[1]);
进入题库练习
问答题本题统计score[]={37,89,63,60,59,78,91)中成绩不及格的人数。   public class javal{   public static void main(String[]args){   int score[]={37,89,63,60,59,78,91),   int sum=0:   int i=0;   while(i  if(score[i]>=60){    ;    ;   }    ;   i++;   }   System.OUt.println("below 60 sum:"+sum);   }   }
进入题库练习
问答题本程序中,主窗口有一个按钮“显示Dialog”,单击该按钮后显示一个对话框,对话框的标题是“Dialog”,其上有一个文字标签“欢迎学习Java.”,此时仍允许对原来窗口进行操作,当关闭新生成的对话框时退出程序,如图所示。importjava.awt.*;importjava.awt.event.*;importjavax.swing.*;publicclassexam_28extendsFrameimplementsActionListener{publicstaticvoidmain(Stringargs[]){exam_28f=newexam_28("exam_28");Panelpan=newPanel();f.init();}publicexam_28(Stringstr){super(str);}publicvoidinit(){addWindowListener(newWindowAdapter(){publicvoidwindowClosing(WindowEvente){System.exit(0);}});setSize(200,200);setLayout(newFlowLayout());but=newButton("显示Dialog");add(but);but.addActionListener(this);dlg=newDialog(this,"Dialog",______);dlg.setSize(100,50);dlg.addWindowListener(newWindowAdapter(){publicvoidwindowClosing(WindowEvente){______;}});dlg.add("Center",newLabel("欢迎学习Java."));setVisible(true);}publicvoidactionPerformed(ActionEvente){dlg.setVisible(true);}privateDialogdlg;privateButtonbut;}
进入题库练习
问答题System.out.println("没有鞍点!");
进入题库练习
问答题本程序的功能是通过单选按钮来控制面板的边框显示风格。窗口中有6个单选按钮,分别代表不同的边框显示的风格,选中任意一个按钮,边框的风格变显示为选中按钮所对应的风格,如图所示。importjava.awt.*;importjava.awt.event.*;importjavax.swing.*;importjavax.swing.border.*;publicclassexam_29{publicstaticvoidmain(String[]args){BorderFrameframe=newBorderFrame();frame.setDefaultClcseOperation(JFrame.EXIT_ON_CLOSE);frame.show();}}classBorderFrameextendsJFrame{publicBorderFrame(){setTitle("exam_29");setSize(WIDTH,HEIGHT);ContainercontentPane=getContentPane();buttonPanel=newJPanel();group=newButtonGroup();addRadioButton("低斜面边界",BorderFactory.createLoweredBevelBorder());addRadioButton("凸斜面边界",BorderFactory.createRaisedBevelBorder());addRadioButton("蚀刻边界",BorderFactory.createEtchedBorder());addRadioButton("直线边界",BorderFactory.createLineBorder(Color.blue));addRadioButton("不光滑边界",BorderFactory.createMatteBorder(5,5,5,5,Color.yellow));addRadioButton("空边界",BorderFactory.createEmptyBorder());Borderborder=BorderFactory.createEmptyBorder();Bordertitled=BorderFactory.createTitledBorder(border,"Bordertypes");buttonPanel.setBorder(______);contentPane.add(buttonPanel);}publicvoidaddRadioButton(StringbuttonName,finalBorderb){JRadioButtonbutton=newJRadioButton(buttonName);button.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEventevent){Bordertitled=BorderFactory.createTitledBorder(b,"Bordertypes");buttonPanel.setBorder(titled);______;}});group.add(button);buttonPanel.add(button);}publicstaticfinalintWIDTH=600;publicstaticfinalintHEIGHT=200;privateJPanelbuttonPanel;privateButtonGroupgroup;}
进入题库练习
问答题本程序分行打印输出了当前系统中所有字体的名称。 ______; public class exam_38 { public static void main (String[] args) { String[] fontNames=GraphicsEnvironment .getLocalGraphicsEnvironment().getAvailableFontFamilyNames(); for (int i=0; ______; i++) System.out.println(fontNames[i]); } }
进入题库练习
问答题本题的功能是用冒泡法对数组元素arr[]={30,1,-9,70}进行从小到大排列。冒泡法排序是比较相邻的两个元素的大小,然后把小的元素交换到前面。
进入题库练习
问答题下面是一个Applet程序,其功能是在窗口中绘制3个半径递增的圆,并用RGB三原色对这 3个圆填充。要求建立一个绘制圆的类,实现根据指定颜色进行填充的功能,在主程序中通过调用这个类的方法实现圆的绘制。请改正程序中的错误(有下画线的语句),使程序能输出正确的结果。 注意:不改动程序的结构,不得增行或删行。 import java.applet.*; import java.awt.*; import java.awt.*; /* <applet code="ex15_3.class"width=800 height=400> </applet> */ class CanvasCircle extends Canvas private Color cCircle; public CanvasCircle(Color c) cCircle=c; public void paint(Graphics g) int dimCircle,xCircle,yCircle; Dimension sizeCurrent=getSize(); if(sizeCurrent.width>sizeCurrent.height) dimCircle=sizeCurrent.width; else dimCircle=sizeCurrent.height; g.setColor(cCircle); xCircle=(sizeCurrent.heighe-dimCircle)/2; yCircle=(sizeCurrent.width-dimCircle)/2; g.fillOval(xCircle,yCircle,dimCircle,dimCircle); public class exl5_3 extends Applet public void init() GridBagLayout gbl=new GddBagLayout(); GridBagConstraints gbc=new CridBagConstraints(); CanvasCircle circleNew; setLayout(gbl); gbc.weightx=1.0; gbc.weighty=1.0; gbc.fill=GridBagConstraints.BOTH; circleNew=new CanvasCircle(Color.red); gbl.setConstraints(circleNew,gbc); add(circleNeW); gbc.weightx=1.5; gbc.weighty=1.5; circleNew=new CanvasCircle(Color.green); gbl.sctConstraints(eircleNew,gbc); add(circleNew); gbc.weightx=2.0; gbc.weighty=2.0; circleNew=new CanvasCircle(Color.blue); gbl.setConstraints(circleNew,gbc); add(circleNew); ex15_3.html <HTML> <HEAD> <TITLE>ex15_3</TITLE> </HEAD> <BODY> <applet code="ex15_3.class"width=800 height=400> </applet> </BODY> </HTMI>
进入题库练习
问答题本题程序的功能是随机产生一个1~10的随机数,根据提示,用户可以猜这个随机数。例如程序随机产生的随机数是7,如果输入8,则提示“Try smaller…”并继续提示输入;如果输出6,则提示“Try bigger…”并继续提示输入;如果输入7,则会输出“Great!”并退出程序。请将下述程序补充完整(注意:不得改动程序的结构,不得增行或删行)。 import java.io.*; public class basic { public static void main(String[] args) { InputStreamReader it; Bur feredReader in; Ir = new InputStreamReader(System.in) In = new BufferedReader(ir); int ranNum = ______; int guessNum = -1; String str; while (______) { System.out.print ("Please Input:"); try { ______; guessNum = Integer.parseInt(str); } catch (Exception e) { } if(guessNum > ranNum) System.out.println("Try smaller..."); else System.out.println("Try bigger..."); } System.out.println ("Great ! "); } }
进入题库练习
问答题下面是打印输出所有和为10000的连续整数(如:1998,1999,2000,2001,2002)的程序,请在每条横线处填写适当语句,使程序的功能完整。 注意:请勿改动main()主方法和其他已有的语句内容,仅在横线处填入适当的语句。 public class Sum10000 public static void main(String args[ ]) int i; int j; int k; int sum; for(i=1;i<=10000;______________) sum=0; j=i; __________________; while(sum<10000) ______________ if(sum==10000) for(k=i;k<=j;k++) System.out.println(k+ ""); System.out.println("********");
进入题库练习
问答题下面的Applet程序,其功能为画一个正方形,大小140*140,其背景色为蓝色(其填充色为pink色,各边离Applet的边为10像素)和一个在填充的正方形中自右上到左下来回移动的小球(半径15)。请改正程序中的错误(有下划线的语句),使程序执行后,能得到预期的结果。注意:不改动程序的结构,不得增行或删行。程序的执行结果为:importjava.awt.*;importjava.applet.*;/*<appletcode=BallAnimwidth=800height=600></applet>*///画一个正方形和一个移动的球,实现了Runnable接口。publicclassBallAnimextendsAppletimplementsRunnable{ThreadanimThread;intballX=100;//球的x坐标intbally;10;//球的Y坐标intballDirection=0;//球移动的方向标志:0表示从上向下移动,1表示从下向上移动publicvoidinit(){{{U}}super.setBackground(Color.blue);{{/U}}}publicvoidstart(){if({{U}}animThread!=null{{/U}}){animThread=newThread(this);animThread.start();}}publicvoidstop(){animThread.stop();animThread=null;}//实现Runnable接publicvoidrun(){Thread.currentThread().setPriority(Thread.NORM_PRIORITY);//设置线呈优先级NORM_PRIORITYwhile(true){moveBall();try{Thread.sleep(100);//休眠0.1秒}catch(ExceptionsleepProblem){//Thisappletignoresanyexceptionsifithasaproblemsleeping.//MaybeitshouldtakeSominex}}}privatevoidmoveBall(){//球对角运动if(ballDirection==0){ballX-=2;//如果球从左向右运动,球的X坐标减少2ballY+=2;//如果球从上向下运动,球的Y坐标增加2if(ballY>100)//球的Y坐标增加到100,改变球的运动方向{ballDirection=1;ballX=10;ballY=100;}}else{ballX+=2;//如果球从右向左运动,球的X坐标增加2ballY-=2;//如果球从下向上运动,球的Y坐标减少2if(bally<=10)//球的X坐标减少到10,改变球的运动方向{ballDirection=0;ballX=100;ballY=10;}}{{U}}paint();{{/U}}}publicvoidpaint(Graphicsg){g.setColor(Color.pink);g.fillRect(10,10,120,120);g.setColor(Color.green);g.fillOval(ballX,ballY,30,30);}}{{B}}ex40_3.html:{{/B}}<html><head><title>ex40_3</title></head><body><appletcode="BallAnim.class"width=800height=400></applet></body></html>
进入题库练习
问答题本题中,在窗口右侧添加了一个菜单,右侧为一个文本域,菜单有“File”和“Help”,“File”菜单中有菜单项“New”、“Open”、“Save”、“Save as”和“Exit”,其中“Open”的快捷键为<Ctrl+O>,“Save”的快捷键为<Ctrl+S>,而“Help”菜单以及其中的菜单项“Index”和“About”没定了第一个字母为其快捷字母,通过鼠标单击任一个菜单项或通过快捷键以及快捷字母,都能在后台输入所选择的菜单项。 import java.awt.*; import java.awt.event.*; import javax.swing.*; import javax.swing.event.*; public class java2 extends JFrame______ private JMenuItem saveItem; private JMenuItem saveAsItem; private JPopupMenu popup; private JTextArea textArea; public java2() setTitle("java2"); setSize(400,300); addWindowListener(new WindowAdapter() public void windowClosing(WindowEvent e) System.exit(0); ); textArea=new JTextArea(0,0); Container contentPane=getContentPane(); contentPane.add(new JScrollPane(textArea),"Center"); JMenuBar menuBar=new JMenuBar(); menuBar.setLayout(new BoxLayout(menuBar,BoxLayout.Y_AXIS)); getContentPane().add(menuBar,BorderLayout.WEST); HorizontalMenu fileMenu=new HorizontalMenu("File"); fileMenu.addMenuListener(this); JMenuItem openItem=new JMenuItem("Open"); openItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_0,InputEvent.CTRL_MASK)); saveItem=new JMenuItem("Save"); saveItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_S,InputEvent.CTRL_MASK)); saveAsItem=new JMenuItem("Save As"); menuBar.add(makeMenu(fileMenu, new Object[] "New",openItem,null,saveItem,saveAsItem,null,"Exit" ,this)); HorizontalMenu helpMenu=new HorizontalMenu("Help"); helpMenu.______('H'); menuBar.add(Box.createVerticalGlue()); menuBar.add(makeMenu(helpMenu, new Object[] new JMenuItem("Index",'I'), new JMenuItem("About",'A') ,this)); public void actionPerformed(ActionEvent evt) String arg=evt.getActionCommand(); System.out.println(arg); if(arg.equals("Exit")) System.exit(0); public void menuSelected(MenuEvent evt) public void menuDeselected(MenuEvent evt) public void menuCanceled(MenuEvent evt) public HorizontalMenu makeMenu(Object parent,Object[]items,Object target) HorizontalMenu m=null; if(parent instanceof HorizontalMenu) m=(HorizontalMenu)parent; else if(parent instanceof String) m=new HorizontalMenu((String)parent); else return null; m.setMinimumSize(m.getPrefeHedSize()); for(int i=0;i<items.length;i++) if(items[i]==null) m.addSeparator(); else m.add(makeMenuItem(items[i],target)); return m; public static JMenuItem makeMenuItem(Object item,Object target) JMenuItem r=null; if(item instanceof String) r=new JMenuItem((String)item); else if(item instanceof JMenuItem) r=(JMenuItem)item; else return null; if(target instanceof ActionListener) r.addActionListener((ActionListener)target); return r; class HorizontalMenu extends JMenu HorizontalMenu(String label) super(label); JPopupMenu pm=getPopupMenu(); pm.setLayout(new BoxLayout(pm,BoxLayout.X_AXIS)); setMinimumSize(getPreferredSize()); public static void main(string[]args) Frame f=new java2(); f.show();
进入题库练习