栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

合肥工业大学-Java-第三次作业

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

合肥工业大学-Java-第三次作业

姓名:                 学号:                    专业班级:                     

作业3

  1. 如何开发Java程序图形界面?它需要引入哪些包?
  2. 什么是布局管理器,它有什么作用?
  3. frame类和Panel类的默认布局器分别是什么?
  4. 请说明FlowLayout布局方式的特点?
  5. 在Java中,什么是事件?简述处理事件的机制。
  6. 绘制骰子四点的图案。(正方形内四个圆形)
  7. 编写Java程序,创建一个窗体,并实现交互。在窗体内“单击鼠标左键”,在光标处绘制一个“绿圆”;窗体内“单击鼠标右键”,在光标处绘制一个“红色方框”;窗体内“双击鼠标左键”,清空所有已画“圆”和“方”。

  • 提交作业说明:
    3月27日之前提交作业,命名方式为 学号+姓名+作业3

    =====================================================================

    答:1、制作图形化界面是要创建一个窗口,并在窗口中添加各种组件,然后指定组件的属性和在窗口的位置与颜色,接着在指定的图形化界面定义对不同的事情的反应,实现图形化界面和用户的交互。需要引包:AWT,Swing

    2、布局管理器是实现Layout Manager接口类的实例,布局管理器的作用是设计窗口的最佳大小和最佳颜色,以及窗口中的组件大小与位置。

    4、FlowLayout:可以创建一个中对齐的布局对象。使用FlowIayout布局的容器使用add方法将组件顺序地添加到容器中,组件按照加入的先后顺序从左向右排列,在该方法中设置大小无效,需要调用其他的类。

    5、事件,是封装了事件源对象及跟事件相关的信息。事件处理机制:先生成监听器,在发生事件的对应组件上注册监听器,当注册监听器的组件上发生事件时,将事件对象返回给监听器,最后监听器调用相应的方法处理事件。

    第6题代码:

    import javax.swing.*;
    import java.awt.*;
    
    class ShowLayout extends Jframe{
        PanelDiceLayout PanelDice;
        ShowLayout(){
            PanelDice=new PanelDiceLayout();//创建面板实例
            add(PanelDice);//将面板实例添加到窗口容器中
            setBounds(100,100,400,400);//设置窗口显示位置和大小
            setTitle("三点的骰子");//设置窗口标题
            setVisible(true);//显示窗体
            setDefaultCloseOperation(Jframe.EXIT_ON_CLOSE);//结束窗口所在的应用程序
        }
    
    }
    
    class PanelDiceLayout extends JPanel{//创建内部面板
        public void paint(Graphics g){//重写paint()方法
            Graphics2D g2 = (Graphics2D)g;//将抽象父类的Graphics强制转换为子类Graphics2D
            //g2.setStroke(new BasicStroke());可设置线条粗细
            g2.setColor(Color.black);//设置当前颜色为黑色
            g2.drawRoundRect(150,100,100,100,20,20);//绘制一个概略的圆角矩形
            g2.setColor(Color.red);//设置当前颜色为红色
            g2.fillOval(170,120,20,20);//用当前颜色填充指定矩形界定的椭圆
            g2.fillOval(210,120,20,20);//
            g2.fillOval(210,160,20,20);//
            g2.fillOval(170,160,20,20);//
        }
    }
    public class a1{
        public static void main(String args[]){
            new ShowLayout();
        }
    }

    第七题代码:

    import javax.swing.*;
    import java.awt.*;
    import java.awt.event.*;
    
    class WindowMouse extends Jframe{
        WindowMouse(){
            setTitle("鼠标绘图");//设置窗口标题
            setBounds(100,100,450,450);//设置窗口显示位置和大小
            setVisible(true);//显示窗体
            setDefaultCloseOperation(Jframe.EXIT_ON_CLOSE);//结束窗口所在的应用程序
            addMouseListener(new MouseAdapter(){//重写监听器
                public void mouseClicked(MouseEvent e){
                    if(e.getClickCount()==1){//单击时
                        if(e.getButton()==e.BUTTON1){//单击左键时
                            Graphics g=getGraphics();
                            g.setColor(Color.green);//设置当前颜色为绿色
                            g.fillOval(e.getX(),e.getY(),60,60);//用当前颜色填充由指定矩形界定的椭圆
                        }
                        else if(e.getButton()==e.BUTTON3){//单击右键时
                            Graphics g=getGraphics();
                            g.setColor(Color.red);//设置当前颜色为红色
                            g.fillRect(e.getX(),e.getY(),60,60);//用当前颜色填写指定的矩形
                        }
                    }
                    else if(e.getClickCount()==2){//双击时
                        if(e.getButton()==e.BUTTON1){//双击左键时
                            repaint();//清屏
                        }
                    }
                }
            });
        }
    }
    public class a2{
        public static void main(String args[]){
            new WindowMouse();
        }
    }

  • 转载请注明:文章转载自 www.mshxw.com
    本文地址:https://www.mshxw.com/it/774791.html
    我们一直用心在做
    关于我们 文章归档 网站地图 联系我们

    版权所有 (c)2021-2022 MSHXW.COM

    ICP备案号:晋ICP备2021003244-6号