十三周作业显示

图片编辑器:基本框架的显示

import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.*;

public class PhotoFrame {
    public static void main(String[]args){

        //创建框架
        final JFrame pf = new JFrame();
        pf.setTitle("图片编辑器");
        pf.setBounds(50,0,1300,900);
        pf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        pf.setVisible(true);

        //创建菜单栏并添加到窗口顶部
        JMenuBar mbar = new JMenuBar();
        pf.setJMenuBar(mbar);
        pf.setLayout(new BorderLayout());

        //创建三个下拉式菜单并添加到菜单栏里
        JMenu m1 = new JMenu("文件");
        JMenu m2 = new JMenu("编辑");
        JMenu m3 = new JMenu("图像");
        mbar.add(m1);
        mbar.add(m2);
        mbar.add(m3);

        //创建菜单项并添加到“文件”菜单下
        JMenuItem mi11 = new JMenuItem("新建");
        JMenuItem mi12 = new JMenuItem("打开");
        JMenuItem mi13 = new JMenuItem("储存");
        m1.add(mi11);
        m1.add(mi12);
        m1.add(mi13);
        m1.add("退出");//直接添加菜单项
        //获取到直接添加的菜单项并注册鼠标动作,输出菜单项标题
        final JMenuItem mi14 = m1.getItem(3);
        mi14.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
                System.exit(0);
            }
        });
        final JMenuItem mi15 = m1.getItem(0);
        mi15.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
                FileDialog fd=new FileDialog(pf,"photo open", FileDialog.LOAD);
                   fd.show();
            }
        });

        //创建菜单项并添加到“编辑”菜单下
        JMenuItem mi21 = new JMenuItem("还原");
        JMenuItem mi22 = new JMenuItem("删除");
        m2.add(mi21);
        m2.add(mi22);
        //创建菜单项并添加到“图像”菜单下
        JMenuItem mi31 = new JMenuItem("放大");
        JMenuItem mi32 = new JMenuItem("缩小");
        JMenuItem mi33 = new JMenuItem("旋转");
        m3.add(mi31);
        m3.add(mi32);
        m3.add(mi33);

        //创建水平分割面板
        JSplitPane splitPane = new JSplitPane();
        splitPane.setOrientation(JSplitPane.HORIZONTAL_SPLIT);
        splitPane.setDividerLocation(140);
        pf.add(splitPane);
        //创建左边面板的按钮
        JButton ColorBtn = new JButton("颜色");
        splitPane.setLeftComponent(ColorBtn);

         }

            }
时间: 2024-10-18 11:53:25

十三周作业显示的相关文章

2017-2018-1 20155302 第十三周作业

2017-2018-1 20155302 第十三周作业 重新精学第八章异常控制流以及系统级I/O相关知识 数据流:只能以事先规定好的顺序被读取一次的数据的一个序列. 控制流:控制转移序列叫做处理器的控制流. 异常控制流:现代系统通过使控制流发生突变做出反应的突变. 教材内容精学及回顾 8.1异常 异常是异常控制流的一种形式,它一部分由硬件实现,一部分由操作系统实现. 异常就是控制流中的突变,用来响应处理器状态中的某些变化. 系统中可能的每种类型的异常都分配了一个唯一的非负整数的异常号,其中一些号

第十二、十三周作业【Linux微职位】

一.结合图形描述LVS的工作原理: lvs-nat模型 主要是修改目标IP地址为挑选出新的RS的IP地址.即请求进入负载均衡器时做DNAT,响应出负载均衡器时做SNAT. 1.当用户请求到达Director Server,此时请求的数据报文会先到达内核的PREROUTING链,此时报文的源IP是CIP,目标IP是VIP. 2.PREROUTING链检查发现数据包的目标IP是本机,将数据包送至INPUT链. 3.IPVS内核模块比对数据包请求的服务是否为集群服务,如果是,则修改数据包的目标IP为后

2017-2018-1 20155310 《信息安全系统设计基础》第十三周学习总结

2017-2018-1 20155310 <信息安全系统设计基础>第十三周学习总结 教材学习内容总结 8.2进程 进程是计算机科学中最深刻最成功的概念之一.系统中的每个程序都是运行在某个进程的上下文中的.(上下文是由程序正确运行所需的状态组成的) ?一个独立的逻辑控制流 ?一个逻辑流的执行在时间上与另一个流重叠,称为并发流. ?多个流并发地执行的一般现象称为冰法. ?多任务也叫作时间分片:一个进程和其他进程轮流运行的概念称为多任务. ?并行流是并发流的一个真子集. ?私有地址空间 ?上下文切换

2017-2018-1 20155232 《信息安全系统设计基础》第十三周学习总结

2017-2018-1 20155232 <信息安全系统设计基础>第十三周学习总结 找出全书你认为最重要的一章,深入重新学习一下,要求(期末占10分): 完成这一章所有习题 详细总结本章要点 给你的结对学习搭档讲解你的总结并获取反馈 我选择课本的第十二章,因为第12章主要讲了程序的并发编程,一个并发编程是由在时间上重叠的一组逻辑流组成的.这章主要学习了三种不同的并发机制:进程,I/O多路复用和线程.无论哪种并发机制,同步对共享数据的并发访问都是一个困难性问题,提出对信号量的p,v操作去解决这个

20175306《信息安全系统设计基础》第十三周学习总结

20175306<信息安全系统设计基础>第十三周学习总结 找出全书你认为最重要的一章,深入重新学习一下,要求(期末占10分): 完成这一章所有习题 详细总结本章要点 给你的结对学习搭档讲解你的总结并获取反馈 参考上面的学习总结模板,把学习过程通过博客(随笔)发表,博客标题"学号 <信息安全系统设计基础>第十三周学习总结",博客(随笔)要通过作业提交,截至时间本周日 23:59. 第十二章:并发编程 学习总结 如果逻辑控制流在时间上重叠,那么他们就是并发的.并发出

python基础周作业

python基础周作业 1.执行python脚本的两种方法 脚本前面直接指定解释器 在脚本开始前声明解释器 2.简述位,字节的关系 每一个字节占用八个比特位 3, 简述ascii.unicode.utf- ‐8.gbk的关系 utf--‐8 <-- unicode <-- gbk <-- ascii 按此方向兼容 4..请写出"李杰"分别用utf- ‐8和gbk编码所占的位数 "李杰" 占用utf -8 占6字节 , gbk 占用4字节 5.pyt

马哥2016全新Linux+Python高端运维班第三周作业作答

                    马哥2016全新Linux+Python高端运维班第三周作业                                           1.列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可.     [[email protected] ~]# who | awk '{print $1 $NF}'| uniq -d     [[email protected] ~]# who     yicx     :0  

解题报告——-2018级2016第二学期第三周作业

解题报告——2018级2016第二学期第三周作业 A:[NOIP2002P]过河卒 题目: 描述 如图,A 点有一个过河卒,需要走到目标 B   点.卒行走规则:可以向下.或者向右.同时在棋盘上的任一点有一个对方的马(如上图的C点),该马所在的点和所有跳跃一步可达的点称为对方马的控制点.例 如上图 C  点上的马可以控制 9 个点(图中的P1,P2 … P8 和 C).卒不能通过对方马的控制点. 棋盘用坐标表示,A 点(0,0).B 点(n,m)(n,m 为不超过 20  的整数,并由键盘输入)

马哥linux 培训第二周作业

注意:第二周作业,请将以下题目整理在51cto博客当中,完成后请将对应的博文链接地址提交在答案栏中,提交格式如下:学号+姓名+博文链接地址eg:1+张三+http://mageedu.blog.51cto.com/4265610/1794420 本周作业内容:1.Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示. 文件管理的命令有cp.mv.rm 复制命令:cp 用法: cp [-adfilprsu] 来源文件(source) 目标文件(destination) cp [o