计算机二级JAVA-101

更新时间:2023-06-18 08:24:04 阅读: 评论:0

计算机二级JAVA-101
(总分:100.00,做题时间:90分钟)
一、综合应用题(总题数:3,分数:100.00)
1.本程序的功能是用鼠标在面板上画椭圆形。窗口中有一个黄色的面板,鼠标置于黄色面板时拖动,可绘制出椭圆形,如图所示。

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class exam_86 extends JFrame
{
private SelfContainedPanel myPanel;
public exam_86()
{
tTitle("exam_86");
myPanel=new JPanel() ;
myPanel.tBackground( llow );
Container c=getContentPane();
c.tLayout( new FlowLayout() );
现代诗歌的特点c.add( myPanel );
tSize( 300, 200 );
show();
}
public static void main( String args[] )
{
exam_86 app=new exam_86();
卧室放什么花好app.addWindowListener( new WindowAdapter()
{
public void windowClosing( WindowEvent e )
{
it(0);
}
} );
}
}
class SelfContainedPanel extends JPanel
{
private int x1, y1, x2, y2;
public void SelfContainedPanel()
{
addMouListener( new MouAdapter()
{
public void mouPresd( MouEvent e )
{
X();
Y();
}
public void mouRelead( MouEvent e )
{
X();
Y();
repaint();
}
});
addMouMotionListener( new MouMotionAdapter()
{
public void mouDragged( MouEvent e ) 报告模板范文
{
X();
Y();
repaint();
}
} );
}
public Dimension getPreferredSize()
{
return new Dimension( 150, 100 );
}
public void paintComponent( Graphics g )
{
super.paintComponent( ) ;
g.drawOval( Math.min( x1, x2 ), Math.min( y1, y2 ), Math.abs( x1 - x2 ),
Math.abs( y1 - y2 ) );
}
}

(分数:33.00)
__________________________________________________________________________________________
正确答案:()
解析:第1处:myPanel=new SelfContainedPanel()
第2处:public SelfContainedPanel()
第3处:super.paintComponent( g )
2.本程序的功能是监听鼠标左右键的点击,以及面板中滚动条的添加。在窗口的画板中单击鼠标左键,在单击的位置绘制一个圆,当绘制的圆大于画板的大小时,画板就添加滚动条,在画板中单击鼠标右键,则清除画板中的所有图形,如图所示。

import javax.swing.*;
import javax.swing.event.MouInputAdapter;
import java.awt.*;
import java.awt.event.*;
import java.util.*;
public class exam_87 extends JPanel {
private Dimension size;
private Vector objects;
private final Color colors[]={
d, Color.blue, , ange,
an, Color.magenta, Color.darkGray, llow};
private final int color_n=colors.length;
JPanel drawingArea;
public exam_87() {
tOpaque(true);
size=new Dimension(0,0);
objects=new Vector();
JLabel instructionsLeft=new JLabel(
"点击鼠标左键画圆.");
JLabel instructionsRight=new JLabel(
"点击鼠标右键清空画板.");
JPanel instructionPanel=new JPanel(new GridLayout(0,1));
instructionPanel.add(instructionsLeft);
instructionPanel.add(instructionsRight);
drawingArea=new JPanel() {
protected void paintComponent(Graphics g) {
super.paintComponent(g);
Rectangle rect;
for (int i=0; i < objects.size(); i++) {
rect=(Rectangle)objects.elementAt(i);
g.tColor(colors[(i % color_n)]);
g.fillOval(rect.x, rect.y, rect.width, rect.height);
}
}
};
drawingArea.tBackground(Color.white);
drawingArea.addMouListener(new MouListener()) ;
JScrollPane scroller=new JScrollPane(drawingArea);
scroller.tPreferredSize(new Dimension(200,200));
tLayout(new BorderLayout());
add(instructionPanel, BorderLayout.NORTH);
add(scroller, BorderLayout.CENTER);
}
class MyMouListener extends mouInputAdapter {
final int W=100;
final int H=100;
public void mouRelead(MouEvent e) {
boolean changed=fal;
if (SwingUtilities.isRightMouButton(e)) {
veAllElements();
size.width=0;
size.height=0;
changed=true;
} el {
int X() - W/2;
int Y() - H/2;
if (x < 0) x=0;
if (y < 0) y=0;
Rectangle rect=new Rectangle(x, y, W, H);
objects.addElement(rect);
drawingArea.scrollRectToVisible(rect);
int this_width=(x + W + 2);
if (this_width > size.width)
{size.width=this_width; changed=true;}
int this_height=(y + H + 2);
if (this_height > size.height)
{size.height=thisheight; changed=true;}
}
好的创业项目if (changed) {
drawingArea.tPreferredSize(size); 人物故事
validate();
}
drawingArea.paint() ;
}
}
public static void main (String args[]) {
JFrame frame=new JFrame("exam_87");
frame.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {it(0);}
});
frame.tContentPane(new exam_87());
frame.pack();
frame.tVisible(true);
}
}

(分数:33.00)
__________________________________________________________________________________________
正确答案:()
解析:第1处:drawingArea.addMouListener(new MyMouListener())
第2处:class MyMouListener extends MouInputAdapter
第3处:paint()
3.本程序的功能是用滑动条来控制画板中圆的大小。窗口中有一个画板和一个滑动条,画板中有一个黑色的实心圆,当拖动滑条上的滑块时,画板中圆的大小随之改变,如图所示。
小时英语怎么读
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;
public class exam_88 extends JFrame
{
private JSlider diameter;
private OvalPanel myPanel;
public exam_88()
{
super( "exam_88" );
myPanel=new OvalPanel();
myPanel.tBackground( Color.white );
diameter=new JSlider( SwingConstants.HORIZONTAL, 0, 200, 10 );
diameter.tMajorTickSpacing(10);
diameter.tPaintTicks( true );
diameter.addChanqeListener(ChangeListener()
{
public void stateChanged( ChangeEvent e )
{
myPanel.tDiameter( Value() );
}
});
Container c=getContentPane();
c.add( diameter, BorderLayout.SOUTH );
c.add( myPanel, BorderLayout.CENTER );
tSize( 220, 270 );
show();
}
public static void main( String args[] )
{
exam_88 app=new exam_88();
app.addWindowListener( new WindowAdapter()
{
public void windowClosing( WindowEvent e )
{
it(0);
}
} );
}
}
class OvalPanel extends JPanel
{
private int diameter=10;
public void paintComponent( Graphics g )
{
this.paintComponent( g ) ;
g.fillOval( 10, 10, diameter, diameter ); 白色英文怎么读
}
public void tDiameter()
{
diameter=( d >= 0 ? d : 10 );
repaint();
}
public Dimension getPreferredSize()
{
return new Dimension( 200, 200 );
}
public Dimension getMinimumSize()
{
return getPreferredSize(); 什么即景作文
}
}

本文发布于:2023-06-18 08:24:04,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/fan/82/981874.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:画板   鼠标   面板   拖动   点击   右键   功能   黄色
相关文章
留言与评论(共有 0 条评论)
   
验证码:
推荐文章
排行榜
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图