问答题请完成下列Java程序:用一个边框布局来安排一个工具栏和一个卡片布局。工具栏可浮动,包括两个按钮,一个向前一个向后控制卡片的显示;卡片布局包括3张卡片,分别标识为card1、card2、card3。 注意;请勿改动main()主方法和其他已有语句内容,仅在下划线处填入适当的语句。 源程序代码文件清单如下: import java.awt.*; import java.awt.event.*; import javax.swing.*; import javax.swing.border.LineBorder; public class ex20_2 private static CardLayout cl=new CardLayout(); private static JPanel cp=new JPanel(); public static void main(String args[]) JFrame jf=new JFrame(); jf.setTitle("ex20_2"); Container c=jf.getContentPane(); JToolBar jtb=new JToolBar(); JButton btnNext=new JButton(new Imagelcon("next.gif")); JButton btnPre=new JButton(new ImageIcon("back.gif")); jtb.add(btnPre); jtb.add(btnNext); cp.setLayout(c1); Dimension dim=new Dimension(150,80); cp.setPreferredSize(dim); cp.setBorder(new LineBorder(Color.BLACK)); cp.add(new JLabel("card1",JLabel.CENTER),"card1"); cp.add(new JLabel("card2",JLabel.CENTER),"card2"); cp.add(new JLabel("card3",JLabel.CENTER),"card3"); c.add(jtb,BorderLayout.NORTH); c.add(cp,BorderLayout.CENTER); ActionListener al=new ActionResponse(); ______; ______; if.addWindowListener(new WindowAdapter() public void windowClosing(WindowEvent we) System.exit(0); ); jf.pack(); jf.setVisible(true); static class ActionResponse implements ActionListener public void actionPerformed(ActionEvent ae) if(ae.getActionCommand().equals("next")) c1.next(cp); else c1.previous(cp);
问答题本程序的功能是定义了求长方形周长的方法rang,并调用该方法计算长和宽分别为67和23的长方形的周长。
public class exam_78{
public static void main(String[] args) {
______;
temp=new exam_78();
int res=rang(67,23);
System.out.println("res="+res);
}
static ______ rang(int width, int length){
int zc;
zc=(width+length)*2;
______;
}
}
问答题下面是一个Applet程序,其功能是建立一个图形用户界面的窗口,包括一个文本显示区和一个按钮,单击按钮,可以在文本区已有的文本基础上追加显示10条“欢迎您,参加Java考试!”信息,并且文本区由滚动条控制文本的上下滚动。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果。
注意:不改动程序的结构,不得增行或删行。
源程序文件代码清单如下;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
<applet code="ex13_3.class" width=800 height=400>
</applet>
public class ex13_3 extends JApplet
{
JButton jb = new JButton("Add Text");
JTextPane jtp = new JTextPane();
public void init()
{
jb.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
for(int i=1; i<10; i++)
{{U}}jtp.getText(jtp.setText()+{{/U}}
{{U}}"欢迎您,参加Java考试!"){{/U}};
}
});
Container cp = getContentPane();
cp.add(new JScrollPane(jtp));
{{U}}cp.add(BorderLayout. SOUTH, jtp){{/U}};
}
public static void main(String args[])
{
ex13_3 obj13_3=new ex13_3();
String str = obj13_3.getClass().toString();
if(str.indexOf("class") !=-1)
str=str.substring(6);
JFrame frm = new JFrame(str);
frm.addWindowListener(new WindowAdapter()
{
public void windowClosing(WindowEvent we)
{
System.exit(0);
}
});
{{U}}frm.getContentPane ().addiex13 3){{/U}};
frm.setSize(300, 400);
frm.setVisible(true);
}
}
{{B}}ex13_3.html{{/B}}
<HTML>
<HEAD>
<TITLE>ex13_3</TITLE>
</HEAD>
<BODY>
<applet code="ex13_3.class" width=800 height=400>
</applet>
</BODY>
</HTML>
问答题本程序的功能是求一个一维数组arr[]={13,7,21,7,9,69,34,85)中的最大值。
public class exam_45{
public static void main(String[] args) {
int arr[]={13,7,21,7,9,69,34,85);
int 1=arr.length;
int temp;
______;
for(int i=1; i<1; i++){
if(______)
______;
}
System.out.println("The max:"+temp);
}
}
问答题本程序的功能是获得在文本域中文本的选择。程序窗口中有两个文本域和一个“Copy”按钮,选中第一个文本域中的部分文本,单击“Copy”按钮,则把选中的文本添加到第二个文本域中,如图所示。importjava.awt.*;importjava.awt.event.*;importjavax.swing.*;publicclassexam_65extendsJFrame{privateJTextAreat1,t2;privateJButtoncopy;publicexam_65(){super("exam_65");Boxb=Box.createHorizontalBox();Strings="Thisisademostringto/n"+"illustratecopyingtext/n"+"fromoneTextAreato/n"+"anotherTextAreausingan/n"+"externalevent/n";t1=newJTextArea(s,10,15);b.add(newJScrollPane(t1));copy=newJButton("Copy>>>");addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente){t2.append(t1.getText());}});b.add(copy);t2=newJTextArea(10,15);t2.setEditable(false);b.add(newJScrollPane(t2));Containerc=getContentPane();c.add(b);setSize(425,200);show();}publicstaticvoidmain(Stringargs[]){exam_65app=newexam_65();addWindowListener(newWindowAdapter(){publicvoidwindowClosing(WindowEvente){System.exit(0);}});}}
问答题本程序中,使用按钮来更改窗口背景的颜色。窗口中有三个按钮:Yellow、Blue和Red,单击任何一个按钮,就能将窗口的背景颜色设置为对应的颜色,如图所示。importjava.awt.*;importjava.awt.event.*;importjavax.swing.*;classButtonPanelextendsJPanelimplementsActionListener{publicButtonPanel(){yellowButton=newJButton("Yellow");blueButton=newJButton("Blue");redButton=newJButton("Red");add(yellowButton);add(blueButton);add(redButton);yellowButton.addActionListener(this);blueButton.addActionListener(this);redButton.addActionListener(this);}publicvoidactionPerformed(ActionEventevt){Objectsource=______;Colorcolor=getBackground();if(source==yellowButton)color=Color.yellow;elseif(source==blueButton)color=Color.blue;elseif(source==redButton)color=Color.red;______;repaint();}privateJButtonyellowButton;privateJButtonblueButton;privateJButtonredButton;}classButtonFrameextendsJFrame{publicButtonFrame(){setTitle("exam_16");setSize(300,200);addWindowListener(newWindowAdapter(){publicvoidwindowClosing(WindowEvente){System.exit(0);}});ContainercontentPane=getContentPane();contentPane.add(newButtonPanel());}}publicclassexam_16{publicstaticvoidmain(String[]args){JFrameframe=newButtonFrame();frame.show();}}
问答题下面是一个Applet程序,其功能是计算山顶的高度,计算方法是:该山顶由a点量得仰角度数为a度,由b点量得仰角度数为b度,且测得a,b点之间的距离为c米,求山的高度。要求窗口中有3个输入框,分别作为a,b,c的输入,一个按钮点击后进行计算,结果显示在另一个文本框中(这个文本框不可编辑)。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果。
注意:不改动程序的结构,不得增行或删行。
源程序文件代码清单如下:
import java.io.*;
import java.awt.*;
import java.awt.event.*;
import java.applet.Applet;
/*
<applet code="ex6_3.class" width=800 height=400 >
</applet>
*/
public class ex6_3 extends Applet implements ActionListener
{
Panel pane=new Panel();
Label 11 = new Label("a 点仰角:");
TextField tfl = new TextField(5);
Label 12 = new Label("b 点仰角:");
TextField tf2 = new TextField(5);
Label 13 = new Label("a,b 之间距离:");
TextField tf3 = new TextField(5);
Button btn = new Button("OK");
Label 14=new Label ("山高");
TextField tf4=new TextField(20);
ex6_3 obj23_3;
public void init()
{
pane.setLayout (new FiowLayout(FlowLayout.LEFT,10,5));
pane.add (11);
pane.add (tf1);
pane.add (12);
pane.add (tf2);
add ("North", pane);
Panel p2=new Panel();
p2.setLayout(new FlowLayout (FlowLayout. LEFT, 10,5));
p2.add(13);
p2.add (tf3);
p2.add(btn);
btn. addActionListener (this);
add ("Center", p2);
Panel p3=new Panel();
p3.setLayout(new FlowLayout (FlowLayout.LEFT,10,5));
p3.add(14);
{{U}}tf4. setEditable (true);{{/U}}
p3.add(tf4);
add ("South", p3);
obj23_3=new ex6_3();
}
public void doMessure(double al,double a2,double a3,TextField tf)
{
double pi=Math. PI,a,b,h;
a=al*pi/180.0;
b=a2*pi/180.0;
{{U}}h=a3/(1.0/Math. tan (a) -1.0/Math. tan (b)){{/U}};
{{U}}tf.setText (Integer.toString(h)){{/U}};
}
public void actionPerformed(ActionEvent ae)
{
double a,b, c;
try
{
a=new Double(tf1.getText()) .doubleValue
b=new Double(tf2,getText ()) .doubleValue
c=new Double(tf3.getText()) .doubleValue
obj23_3.doMessure(a,b,c, tf4);
}catch (NumberFormatException nfe)
{
tf4.setText("wrong number!");
}
}
}
ex6_3. html
<HTML>
<HEAD>
<TITLE>ex6_3</TITLE>
</HEAD>
<BODY>
<applet code="ex6_3.class" width=800 height=400 >
</applet>
</BODY>
</HTML>
问答题本程序是一个Applet,功能是根据参数画圆。页面中有三个文本框,分别用于输入圆的位置坐标和圆的半径。分别输入圆左上角的横坐标、纵坐标以及半径,单击“确定”按钮后可以在面板上画出该圆,如图所示。importjava.awt.*;importjava.applet.*;importjava.awt.event.*;classMycanvas______{intx,y,r;intred,green,blue;Mycanvas(){setSize(100,100);setBackground(Color.cyan);}publicvoidsetX(intx){this.x=x;}publicvoidsetY(inty){this.y=y;}publicvoidsetR(intr){this.r=r;}publicvoidpaint(Graphicsg){______(x,y,2*r,2*r);}}publicclassexam_73extendsAppletimplementsActionListener{Mycanvascanvas;TextFieldinputR,inputX,inputY;Buttonb;publicvoidinit(){canvas=newMycanvas();inputR=newTextField(6);inputX=newTextField(6);inputY=newTextField(6);add(newLabel("输入圆的位置坐标:"));add(inputX);add(inputY);add(newLabel("输入圆的半径:"));add(inputR);b=newButton("确定");b.addActionListener(this);add(b);add(canvas);}publicvoidactionPerformed(ActionEvente){intx,y,r;try{x=Integer.parseInt(inputX.getText());y=Integer.parseInt(inputY.getText());r=Integer.parseInt(inputR.getText());canvas.setX(x);canvas,setY(y);canvas.setR(r);canvas.repaint();}catch(NumberFormatExceptionee){x=0;y=0;r=0;}}}exam_73.html:<html><head><title>exam_73</title></head><body><appletcode="exam_73.class"width="400"height="500"></applet></body></html>
问答题本程序求1~20间所有奇数的和,并打印输出最终结果。
public class exam_68{
public static void main(String[] args) {
int sum=0;
for(int i=1; ______){
if(______)
______;
sum=sum+i;
}
System.out.println("sum:"+sum);
}
}
问答题请完成下列Java程序:创建一个下拉式菜单,菜单项包括3个CheckboxMenultem(复选框),一条分割线和一个Exit项。要求打开或关闭复选框时,确定是哪个被切换,是开还是关,并输出它的状态;选择Exit项能够退出程序。注意:请勿改动main()主方法和其他已有语句内容,仅在下划线处填入适当的语句。程序运行结果如下;importjava.awt.*;importjava.awt.event.*;publicclassex4_2extendsFrameimplementsItemListener,ActionListenerpublicstaticvoidmain(String[]arg)ex4_2obj4_2=newex4_2();ex4_2()super("ex4_2");MenuBarmb=newMenuBar();Menum=newMenu("Menu");MenuItemmi;mb.add(m);CheckboxMenuItemcb;cb=newCheckboxMenuItem("Checkl");cb.addItemListener(this);m.add(cb);cb=newCheckboxMenuItem("Check2");cb.addItemListener(this);m.add(cb);cb=newCheckboxMenuItem("Check3");cb.addItemListener(this);m.add(cb);m.addSeparator();m.add(mi=newMenuItem("Exit"));mi.addActionListener(this);setMenuBar(mb);setSize(50,50);show();publicvoiditemStateChanged(ItemEventevent)System.out.print(event.getItem());switch(event.getStateChange())caseItemEvent.DESELECTED:System.out.println("DESELECTED");break;case______________;______________;break;publicvoidactionPerformed(ActionEventae)if(ae.getActionCommand().equals("Exit-))System.exit(O);
问答题本题中,主窗口有一个按钮“显示Dial09”,单击该按钮后显示一个对话框,对话框的标题是“Dial09”,其上有一个文字标签“欢迎学习Java.”,此时仍允许对原来窗口进行操作,当关闭新生成的对话框时退出程序。
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class java2 extends Frame implements ActionLis-
tener{
public static void main(String args[]){
java2 f=new java2("java2");
Panel pan=new Panel();
f.init();
}
public java2(String str){
super(str);
}
public void init(){
addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e){
System.exit(0);
}
});
setSize(200,200);
setLayout(new FlowLayout());
but=new Button("显示Dialog");
add(but);
but.addActionListener(this);
dig=new Dialog(this,"Dialog", );
dig.setSize(100,50);
dig.addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e){
;
}
});
dig.add("Center",new Label("欢迎学习Java."));
setVisible(true);
}
public void actionPerformed(ActionEvent e){
dig.setVisible(true);
}
private Dialog dig;
private Button but;
}
问答题下列程序要求在对话框中打印“欢迎您参加考试!”。请将程序填写完整。 注意:不改动程序结构,不得增行或删行。 import javax.swing.JOptionPane; public class ex1 public static void main(String args[]) JOptionPane.______(null,"欢迎您参加考试!"); System.exit(0);
问答题本题的功能是监听鼠标的拖曳操作。窗口中有一个列表框,列表框中列出了当前目录的所有文件.鼠标选中一个或多个文件后拖曳出窗口,此操作的功能是将拖曳的文件复制一份在拖曳的目的目录下。
import java.awt.*;
import java.awt.datatransfer.*;
import java.awt.dnd.*;
import java.awt.event.*;
import java.io.*;
import java.util.*;
import javax.swing.*;
public class java3
{
public static void main(String[] args)
{
JFrame frame=new DragSourceFrame();
frame.setDefaultClose()peration(JFrame.EXITON_CLOSE);
frame.show();
}
}
class DragSourceFrame extends JFrame
{
public DragSourceFrame()
{
setTitle("java3");
setSize(WIDTH,HEIGHT);
Comainer contentPane=getContentPane();
{{U}}File f=new File(".").getabsoluteFile();{{/U}}
File[] files=f.listFiles();
model=new DefaultListModel();
for({{U}}int i=0;i<files.length();i++{{/U}})
try
{
model.addElement(files[i].getCanonicalFile());
}
catch (IOException exception)
{
JOptionPane.showMessageDialog(this,excep-tion);
}
fileList=new JList(model);
contentPane.add(new JScrolIPane(fileList),
BorderLayout.CENTER);
contentPane.add (new JLabel("从列表中拖曳出文件"),
BorderLayout.NORTH);
DragSource dragSource=DragSource.getDefault-DragSource();
dragSource.createDefaultDragGestureRecognizer(fileList,
DnDConstants.ACTION _ COPY _ OR _MOVE,new
DragGestureListener()
{
public void dragGestureRecognized(
DragGestureEvent event)
draggedValues = fileList.getSelectedValues();
Transferable transferable
=new FileListTransferable(draggedValues);
event.startDrag(null,transferable,
new FileListDragSourceListener());
}
});
}
{{U}}private class FileListDragSourceListener implements DragSourceAdapter{{/U}}
public void dragDropEnd( DragSourceDropEvent event)
{
if (event.getDropSuccess())
{
int action=event.getDropAction();
if(action==DnDConstants.ACTION_MOVE)
{
for(int i=O;i<draggedValues.length;i++)
model.removeElement(draggedValues[i]);
}
}
}
}
private JList fileList;
private DefaultListModel model;
private Object[] draggedValues;
private static final int WIDTH=300;
private static final int HEIGHT=200;
}
class FileListTransferable implements Transferable
{
public FileListTransferable(()bject[] files)
{
fileList=new ArrayList(Arrays.asList(files));
}
public DataFlavor[]getTransferDataFlavors()
{
return flavors;
}
public boolean isDataFlavorSupported(DataFlavorflavor)
{
return Arrays.asList(flavors).contains(flavor);
}
public Object getTransferData(DataFlavor flavor)throws UnsupportedFlavorException
{
if(flavor.equals(DataFlavor.javaFileListFlavor)return fileList;
else if(flavor.equals(DataFlavor.stringFlavor))
return fileList.toString();
else
throw new UnsupportedFlavorException(flavor);
}
private static DataFlavor[]flavors=
{
DataFlavor.javaFileListFlavor,
DataFlavor.stringFlavor
};
private java.util.List fileList;
}
问答题注意:下面出现的“考生文件夹”均为%USER%。在考生文件夹中存有文件名为Java_3.java和Java_3.html文件,本题的功能是由用户输入两个浮点数求和。请完善Java_3.java文件和Java_3.htmi文件,并进行调试(在命令行中使用appletviewerJava_3.html,或者使用集成开发环境),程序先显示输入如下:输入两个浮点数后,小程序窗口显示结果如下:由于Java_3.java和Java_3.html文件都不完整,需分别进行修改,请在注释行“//*********Found*********”下一行语句的下画线地方填入正确内容,然后删除下画线,请勿删除注释行或其他已有语句内容。存盘时,文件必须存放在考生文件夹下,不得改变原有文件的文件名。给定源程序:importjava.awt.Graphics;importjavax.swing.*;//*********Found**********publicclassJava_3extends______{doublesum;//存和的变量//*********Found**********publicvoid______(){StringfirstNumber,//输入第1个字符串格式的数secondNumber;//输入第2个字符串格式的数doublenumber1,//加数number2;//被加数//读入第1个输入的数firstNumber=JOptionPane.showInputDialog("Enterfirstfloating-pointvalue");//读入第2个输入的数secondNumber=JOptionPane.showInputDialog("Entersecondfloating-pointvalue");//将字符串数据转换成双字长类型number1=Double.parseDouble(firstNumber);nunnber2=Double.parseDouble(secondNumber);//数据相加sum=number1+number2;}publicvoidpaint(Graphicsg){//用g.drawString给结果g.drawRect(15,10,270,20);g.drawString("数相加之和为;"+sum,25,25);}
问答题本程序是一个Applet,功能是监听画板上图形的选择。页面中有一个画板、一个下拉菜单和一个按钮,用鼠标单击画板上的图形,选中其中一个,用下拉菜单选择要填充的颜色,单击按钮,就以选中的颜色填充选中的图形,如图所示。importjavax.swing.*;importjavax.swing.event.*;importjavax.swing.border.*;importjava.awt.*;importjava.awt.event.*;importjava.awt.geom.*;importjava.util.Vector;publicclassexam_72extendsJApplet{RectanglesCanvascanvas;String[]colorLabels={"White","Red","Blue","Green","Yellow","Magenta","LightGray","Black"};publicvoidinit(){Containercontainer=getContentPane();canvas=newRectanglesCanvas();container.add(canvas);JPanelpanel=newJPanel();TitledBorderborder=newTitledBorder("选择一种颜色并单击填充按钮");panel.setBorder(border);JLabellabel=newJLabel("选择一种颜色:",JLabeI.RIGHT);JComboBoxcomboBox=newJComboBox(colorLabels);comboBox.addActionListener(ComboBoxListener());JButtonfillButton=newJButton("填充");fillButton.addActionListener(newButtonListener());panel.add(label);panel.add(comboBox);panel.add(fillButton);container.add(BorderLayout.SOUTH,panel);}classRectanglesCanvasextendsCanvas{VectorrecVector=newVector();VectorfilledRecs=newVector();VectorfilledColors=newVector();Rectangle2DboundingRec=null;RoundRectangle2DselectedRec=null;ColorfillColor=null;Color[]colors={Color.white,Color.red,Color.blue,Color.green,Color.yellow,Color.magenta,Color.lightGray,Color.black};RectanglesCanvas(){recVector.addElement(newRoundRectangle2D.Float(25,25,75,150,20,20));recVector.addElement(newRoundRectangle2D.Float(125,25,100,75,20,10));recVector.addElement(newRoundRectangle2D.Float(75,125,125,75,20,10));recVector.addElement(newRoundRectangle2D.Float(225,125,125,75,15,20));recVector.addElement(newRoundRectangle2D.Float(150,50,125,175,50,50));addMouseListener(newMyMouseListener());setBackground(Color.white);setSize(400,225);}publicvoidpaint(Graphicsg){Graphics2Dg2D=g;for(inti=0;i<recVector.size();i++){RoundRectangle2Dr=(RoundRectangle2D)recVector.elementAt(i);g2D.draw(r);}if(selectedRec!=null){for(inti=0;i<filledRecs.size();i++){ColorcurrColor=(Color)filledColors.elementAt(i);g2D.setColor(currColor);RoundRectangle2DcurrRec=(RoundRectangle2D)filledRecs.elementAt(i);g2D.fill(currRec);if(currColor==Color.white)g2D.setColor(Color.black);g2D.draw(currRec);}}if(boundingRec!=null){drawHighlightSquares(g2D,boundingRec);}boundingRec=null;}publicvoiddrawHighlightSquares(Graphics2Dg2D,Rectangle2Dr)doublex=r.getX();doubley=r.getY();doublew=r.getWidth();doubleh=r.getHeight();g2D.setColor(Color.black);g2D.fill(newRectangle.Double(x-3.0,y-3.0,6.0,6.0));g2D.fill(newRectangle.Double(x+w*0.5-3.0,y-3.0,6.0,6.0));g2D.fill(newRectangle.Double(x+w-3.0,y-3.0,6.0,6.0));g2D.fill(newRectangle.Double(x-3.0,y+h*0.5-3.0,6.0,6.0));g2D.fill(newRectangle.Double(x+w-3.0,y+h*0.5-3.0,6.0,6.0));g2D.fill(newRectangle.Double(x-3.0,y+h-3.0,6.0,6.0));g2D.fill(newRectangle.Double(x+w*0.5-3.0,y+h-3.0,6.0,6.0));g2D.fill(newRectangle.Double(x+w-3.0,y+h-3.0,6.0,6.0));}}classMyMouseListenerextendsMouseAdapter{publicvoidmouseClicked(MouseEvente){for(inti=0;i<canvas.recVector.size();i++){RoundRectangle2Drec=(RoundRectangle2D)canvas.recVector.elementAt(i);if(rec.contains(e.getX(),e.getY())){canvas.selectedRec=rec;canvas.boundingRec=canvas.selectedRec.getBounds2D();canvas.repaint();return;}}}}classComboBoxListenerextendsActionListener{publicvoidactionPerformed(ActionEvente){JComboBoxcBox=(JComboBox)e.getSource();Stringcolor=(String)cBox.getSelectedItem();for(inti=0;i<colorLabels.length;i++){if(color.equals(colorLabels[i])){canvas.fillColor=canvas.colors[i];return;}}}}classButtonListenerimplementsActionListener{publicvoidactionPerformed(ActionEvente){if(canvas.selectedRec!=nullcanvas.filledColors.addElement(canvas.fillColor);canvas.repaint();}}}}exam_72.html:<html><title>exam_72</title><body><appletcode="exam_72.class"width="300"height="300"></applet></body></html>
问答题return _________________
问答题本程序的功能是监听对滚动条和滑动条的操作。窗口中有一个水平放置的滚动条和一个水平放置的滑动条,拖动滚动条或滑动条的滑块时,下方的文字标签将显示当前操作的对象以及对应的值,如图所示。importjava.awt.*;importjava.awt.event.*;importjavax.swing.*;importjavax.swing.event.*;publicclassexam_44{publicstaticvoidmain(String[]args){JFrameframe=newJFrame("exam_44");Containercontent=frame.getContentPane();JPanelmain=newJPanel(newGridLayout(2,1));JPanelscrollBarPanel=newJPanel();finalJScrollBarscrollBar=newJScrollBar(JScrollBar.HORIZONTAL,0,48,0,255);intheight=scrollBar.getPreferredSize().height;scrollBar.setPreferredSize(newDimension(175,height));scrollBarPanel.add(scrollBar);main.add(scrollBarPanel);JPanelsliderPanel=newJPanel();finalJSliderslider=newJSlider(JSlider.HORIZONTAL,0,255,128);slider.setMajorTickSpacing(48);slider.setMinorTickSpacing(16);slider.setPaintTicks(true);sliderPanel.add(slider);main.add(sliderPanel);content.add(main,BorderLayout.CENTER);finalJLabelstatusLabel=newJLabel("请拖动滚动条或滑动条.");content.add(statusLabel,BorderLayout.SOUTH);//wireuptheeventhandlersscrollBar.addAdjustmentListener(newadjustmentListener(){publicvoidadjustmentValueChanged(AdjustmentEvente){statusLabel.setText("滚动条当前的值="+scrollBar.getValue());}});slider.addChangeListener(newsliderChangeListener(){publicvoidstateChanged(ChangeEvente){statusLabel.setText("滑动条当前的值="+scrollBar.getValue());}});frame.pack();frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);frame.setVisible(true);}}
问答题本题提取字符串“China is a great country.”中的前5个字符生成一个新的字符串,并将剩余字符组成另外一个新的字符串,最后将两个新的字符串连接输出。 public class java1 public static void main(String[] args) String str="China is a great country."; ______; headstr=str.substring(______); trailstr=str.substing(______); System.out.println(headstr+trailstr);
问答题下面程序创建一个长宽均为100的Frame窗口,并且窗口的背景颜色是蓝色。请将程序补充完整。 注意:不改动程序结构,不得增行或删行。 import java.awt .*; public class ex1 extends Frame public static void main(String[] args) ex1 t=new ex1(); t.setSize(100,100); ______ t.setVisible(true);
问答题下面Applet程序,其功能是实现一个计数器,每隔0.15秒计数器数值加1,数值动态变化,并且能够控制计数器的暂停和继续。要求通过使用swing的构件建立图形用户界面,主要包括一个文本区域,用于显示计数器结果;两个按钮,一个使计数器暂停,一个使计数器继续工作。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果。注意:不改动程序的结构,不得增行或删行。程序运行结果如下:importjavax.swing.*;importjava.awt.*;importjava.awt.event.*;/*<appletcode="ex7_3.class"width=800height=400></applet>*/publicclassex7_3extendsJApplet{privateJTextFieldjtf=newJTextField(15);privateJButtonHold=newJButton("Hold"),resume=newJButton("Resume");privateex7_3thobj7_3th=newex7_3th();classex7_3thextendsThread{privateintcnt=0;privatebooleanbIsHold=false;publicex7_3th(){start();}publicvoidhold(){bIsHold=true;}publicsynchronizedvoidfauxResume(){bIsHold=false;{{U}}wait();{{/U}}}publicvoidrun(){while(true){try{sleep(150);synchronized(this){while(bIsHold){{U}}notify(){{/U}};}}catch(InterruptedExceptionie){System.err.println("Interrupted");}{{U}}jtf.setText(cnt){{/U}};}}}publicvoidinit(){Containercp=getContentPane();cp.setLayout(newFlowLayout());cp.add(jtf);Hold.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEventae){obj7_3th.hold();}});cp.add(Hold);resume.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente){obj7_3th.fauxResume();}});cp.add(resume);}publicstaticvoidmain(String[]args){ex7_3obj7_3=newex7_3();Stringstr=obi7_3.getClass().toString();if(str.indexOf("class")!=-1)str=str.substring(6);JFramefrm=newJFrame(str);frm.addWindowListener(newWindowAdapter(){publicvoidwindowClosing(WindowEventwe){System.exit(O);}});frm.getContentPane().add(obj7_3);frm.setSize(300,200);obj7_3.init();obi7_3.start();frm.setVisible(true);}}{{B}}ex7_3.html{{/B}}<HTML><HEAD><TITLE>ex7_3</TITLE></HEAD><BODY><appletcode="ex7_3.class"width=800height=400></applet></BODY></HTML>
