主观

本题的功能是用流式布局管理器来管理窗口中的按钮。在执行程序时指定生成按钮的个数,并把这些按钮都放置在流式布局管理器的窗口中。 

import java.awt.*;

import java.awt.event.*;

import javax.swing.*;

public class java2 

{

public static void main(String[]args)

{

if(args.length!=1)

{

System.out.println("请指定按钮的个数");

System.exit(0);

}

String buttonString=args[O];

int buttonNumber=       ;

ButtonFrame. frame=new ButtonFrame(button-

Number);

frame.setDefaultCloseOperation(JFrame.EXIT_

ON_CLoSE);

frame.show;

}

}

class ButtonFrame. extends JFrame

{

public ButtonFrame(      )

{

buttons=buttonNumber:

setTitle("java2");

setSize(WIDTH,HEIGHT);

JPanel buttonPanel=new JPanel;

for(int i=0;i{

JButton addButton=new JButton("add"+i):

buttonPanel.add(addButton);

Container contentPane=getContentPane;

contentPane.add(buttonPanel);

}

public static final int WIDTH=350;

public static final int HEIGHT=200:

private int buttons;

}

参考答案
您可能感兴趣的试题

本题的功能是监听鼠标的操作。鼠标置于窗口中单击时(左键或右键),在单击的地方会画一个小矩形,如果将鼠标置于小矩形上,则鼠标光标状态改为小十字,按下鼠标左键可拖曳,双击鼠标左键(或右键)时,小矩形消失。

import java.awt.*;

import java.awt.event.*;

import java.util.*;

import java.awt.geom.*;

import javax.swing.*;

public class java3

{

public static void main(String[]args)

{

MouseFrame. frame=new MouseFrame:

frame.setDefaultCloseOperation(JFrame.EXIT_

oN_CLOSE);

frame.show;

}

}

class MouseFrame. extends JFrame

{

public MouseFrame

{

setTitle("java3");

setSize(DEFAULT WIDTH, DEFAULT

HEIGHT):

MousePanel panel=new MousePanel;

Container contentPane=getContentPane;

contentPane.add(panel);

}

public static final int DEFAULT_WIDTH=300;

public static final int DEFAULT_HEIGHT=200;

}

class MousePanel extends JPanel

{

public MousePanel

{

squares=new ArrayList;

current=null:

addMouseListener(new MouseHandler);

addMouseMotionListener(new MouseMotionHan-

dler);

}

public void paintComponent(Graphics g)

{

super.paintComponent(g);

Graphics2D g2=(Graphics2D)g;

for(int i=0;i

g2.draw((Rectangle2D)squares.get(i));

}

public void find(Point2D p)

for(int i=0;i

{

Rectangle2D r=(Rectangle2D)squares.get(i);

if(r.contains(p))return r;

}

return null:

}

public void add(Point2D p)

{

double x=P.getX;

double Y=P.getY:

current=new Rectangle2D.Double(

x-SIDELENGTH/2.

y-SlDELENGTH/2.

S1DELENGTH,

SIDELENGTH);

squares.add(current);

repaint;

}

public void remove(Rectangle2D s)

{

if(S= =null)return:

if(S= =current)current=null;

squares.remove(s):

repaint;

}

private static final int SIDELENGTH=10:

private ArrayList squares;

private Rectangle2D current;

private class MouseHandter extends MouseAction-

Listener

{

public void mousePressed(MouseEvent event)

{

current=find(event.getPoint);

if(current= =null)

add(event.getPoint);

}

public void mouseClicked(MouseEvent event)

current=find(event.getPoint);

if(current!=nullevent.getClickCount

>=2)

remove(current);

}

}

private class MouseMotionHandler implements Mouse-

MotionListener

{

public void mouseMoved(MouseEvent event)

{

if(find(event.getPoint)= =null)

setCursor(Cursor.getDefaultCursor);

else

setCursor(Cursor.getPredefinedCursor

(Cursor.CROSSHAIR_CURSOR));

}

public void mouseDragged(MouseEvent event)

{

if(current!=null)

{

int x=event.getX:

int Y=event.getY; 、

current.setFrame(

x-SIDELENGTH/2,

Y-SlDELENGTH/2.

SIDELENGTH,

SIDELENGTH);

repaint;

}

}

}

}

下列选项中属于Java语言的垃圾回收机制的一项是(  )。

  • A.语法检查 
  • B.堆栈溢出检查
  • C.跨平台
  • D.内存跟踪

数据库设计中反映用户对数据要求的模式是(  )。

  • A.内模式 
  • B.概念模式
  • C.外模式 
  • D.设计模式

下列叙述中正确的是(  )。 

  • A.在面向对象的程序设计中,各个对象之间具有密切的关系
  • B.在面向对象的程序设计中,各个对象都是公用的
  • C.在面向对象的程序设计中,各个对象之间相对独立,相互依赖性小
  • D.上述3种说法都不对
¥

订单号:

遇到问题请联系在线客服

订单号:

遇到问题请联系在线客服