`
japankn
  • 浏览: 216086 次
  • 性别: Icon_minigender_1
  • 来自: 广西
社区版块
存档分类
最新评论

布局管理器OverlayLayout实现PhotoShop工具面板效果

    博客分类:
  • j2se
阅读更多

 final JTextField x1 = new JTextField("0.0", 4); // Button1 x alignment
        final JTextField y1 = new JTextField("0.0", 4); // Button1 y alignment
        final JTextField x2 = new JTextField("0.0", 4);
        final JTextField y2 = new JTextField("0.0", 4);
        final JTextField x3 = new JTextField("0.0", 4);
        final JTextField y3 = new JTextField("0.0", 4);

        p2.add(x1);
        p2.add(y1);
        p2.add(x2);
        p2.add(y2);
        p2.add(x3);
        p2.add(y3);


        GridBagConstraints constraints = new GridBagConstraints();
        c.add(p1, constraints);

        constraints.gridx = 1;
        JButton updateButton = new JButton("Update");
        updateButton.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent ae) {
                jb1.setAlignmentX(
                    Float.valueOf(x1.getText().trim()).floatValue());
                jb1.setAlignmentY(
                    Float.valueOf(y1.getText().trim()).floatValue());
                jb2.setAlignmentX(
                    Float.valueOf(x2.getText().trim()).floatValue());
                jb2.setAlignmentY(
                    Float.valueOf(y2.getText().trim()).floatValue());
                jb3.setAlignmentX(
                    Float.valueOf(x3.getText().trim()).floatValue());
                jb3.setAlignmentY(
                    Float.valueOf(y3.getText().trim()).floatValue());

                p1.revalidate();
            }
        });
        c.add(updateButton, constraints);

        constraints.gridx = 0;
        constraints.gridy = 1;
        constraints.gridwidth = 2;
        c.add(p2, constraints);
    }

    public static void main(String args[]) {
        OverlayTest ot = new OverlayTest();
        ot.setVisible(true);
    }

    public class SimpleReporter implements ActionListener {
        public void actionPerformed(ActionEvent ae) {
            System.out.println(ae.getActionCommand());
        }
    }

    public class GridPanel extends JPanel {
        public void paint(Graphics g) {
            super.paint(g);
            int w = getSize().width;
            int h = getSize().height;
            g.setColor(Color.red);
            g.drawRect(0,0,w-1,h-1);
            g.drawLine(w/2,0,w/2,h);
            g.drawLine(0,h/2,w,h/2);
        }
    }
}

最后提醒,使用OverlayLayout布局管理器关键要记住X,Y轴对应组件位置,和容器没有关系。只要明白这一点,使用还是很简单方便的,我用OverlayLayout布局管理器clone了一个PhotoShop的工具面板。

  • 大小: 30.6 KB
分享到:
评论

相关推荐

    Photoshop工具面板技巧.doc

    Photoshop工具面板技巧

    C#高仿Photoshop CS6界面

    4. **面板与工作区**:Photoshop的多面板布局可以通过多个Panel控件来实现。每个Panel可以包含不同的控件集,根据需要显示或隐藏。 5. **自定义控件**:对于某些特定的功能,例如调色板或图层管理器,可能需要创建...

    C#调用photoshop工具源码

    这通常在解决方案资源管理器中右键点击“引用”->“添加引用”->“COM”选项卡,然后找到并选择“Adobe Photoshop [版本] Type Library”。 2. 定义接口:在代码中,我们需要创建一个接口来表示Photoshop的应用程序...

    Photoshop工具栏

    ### Photoshop工具栏详解 #### 一、画笔工具 画笔工具是Photoshop中最常用的工具之一,主要用于在图像上绘制各种线条和形状。它能够帮助用户实现细腻的绘画效果。 - **选取与设置画笔**:Photoshop提供了两种类型...

    半岛雪人的Photoshop 扩展面板 StarsTail

    Photoshop扩展面板“StarsTail”是由半岛雪人开发的一款专为风光摄影后期处理设计的工具。这个扩展面板专注于灰度蒙版技术,旨在帮助用户更有效地进行图像编辑,特别是对于夜景照片中的星星尾巴(星轨)处理。灰度...

    python实现photoshop自动化

    自写的python脚本,开启photoshop,并加载js脚本代码,可实现photoshop自动化操作

    Photoshop文字艺术效果100例(12-15)

    在Photoshop中,你可以使用"字符"面板调整文字属性,然后通过"路径"或"描边"功能创建多重描边效果。同时,利用图层样式中的"描边"选项,可以轻松实现不同颜色和透明度的描边,让文字看起来更有层次感。 接下来是...

    photoshop切片工具示例

    总的来说,Photoshop的切片工具是网页设计中一种强大且灵活的工具,能够帮助设计师有效地管理网页资源,提高工作效率,同时保持高质量的网页设计。通过熟练掌握切片工具,设计师可以更好地应对现代网页设计的挑战,...

    Photoshop使用指南 pdf清晰版

    Photoshop窗口通常包括菜单栏、选项栏、工具箱、面板以及工作区。熟悉这些元素的位置和功能,能让你更高效地操作软件。 二、图像调整与编辑 1. 图层管理:Photoshop中的图层如同透明的胶片,允许你在不破坏原始图像...

    photoshop_7.0教程(完整版)

    通过学习本教程,用户将了解 Photoshop 的界面元素、菜单栏、工具箱、浮动功能面板等基本组件,以及如何使用各种工具和技术来编辑和处理图像。 菜单栏 菜单栏是 Photoshop 的主要界面元素之一,包含执行任务的菜单...

    Photoshop Panel Developer's Guide

    1. **Photoshop 面板插件开发**:Photoshop面板插件允许用户自定义工作流程,添加额外的功能或工具,提高工作效率。开发者可以通过编写代码来创建这些面板,使得用户可以更便捷地进行图像编辑和处理。 2. **SWC 库...

    Photoshop脚本生成工具

    Photoshop脚本生成工具工具,自动记录Photoshop操作并生成 Javascript 和 VBScript

    基于 VC 实现的 Photoshop颜色编辑器

    在本文中,我们将深入探讨如何使用Visual C++(VC)来实现一个Photoshop颜色编辑器。Photoshop是一款广泛使用的图像处理软件,其强大的颜色管理功能是其核心特性之一。通过编写自定义的颜色编辑器,我们可以扩展...

    photoshop-javscript-脚本指南2019

    同时,Adobe提供的 ExtendScript Toolkit(ESTK)是专门用于编写和调试Photoshop脚本的工具,包含代码编辑器和调试器。 五、学习资源 “photoshop-cc-脚本指南2019.pdf”这本书籍会详细介绍Photoshop的JavaScript ...

    运用photoshop里的工具处理图片实例

    - Photoshop界面分为菜单栏、选项栏、工具箱、面板等部分。了解这些布局可以帮助用户更高效地进行图片编辑。 - 工作流程通常包括打开图片、调整尺寸、修复瑕疵、添加效果、保存输出等步骤。 2. **工具箱** - ...

    使用C#实现photoshop的功能

    本文档介绍了使用 C# 语言实现 Photoshop 的一些图像处理功能,包括底片效果、浮雕效果和黑白效果的实现原理和代码实现。 一、底片效果 底片效果是将图像处理为负片效果,使图像变得反转。实现原理是使用 GetPixel...

    C#实现Photoshop图像特效滤镜源码(亮度、对比度、负片、图像阴影、高斯模糊、透视图,浮雕等)

    里边调用了SharpImage,实现了图像特效滤镜,就是Photoshop的滤镜效果。SharpImage是用于.NET(C#、VB)的专业图像特效以及图像合成类库。借助它,您可以简单快速地实现类似Photoshop的图像特效滤镜以及图像合成: 1...

    photoshop javascript开发工具Adobe ExtendScript Toolkit CC

    Adobe ExtendScript Toolkit CC(ESTK)是Adobe公司为Photoshop和其他Creative Suite应用程序提供的一款JavaScript开发工具,主要用于自动化工作流程和自定义功能。JavaScript在Photoshop中的应用,被称为 ...

    photoshop经典效果教程

    在“photoshop经典效果教程”中,我们主要关注的是如何使用这款强大的工具来实现动感模糊这一经典效果。动感模糊是摄影和视觉艺术中常见的一种技巧,用于表现物体运动的速度感或创造独特的视觉风格。 动感模糊效果...

    Photoshop基本教材.pdf

    图层面板是 Photoshop 中的一个面板,用于管理图层,提供了多种操作,如: 1. 新建图层 2. 删除图层 3. 复制图层 4. 排列图层 5. 链接图层 6. 合并图层 7. 隐藏/显示图层 五、矢量图与位图 矢量图和位图是两种...

Global site tag (gtag.js) - Google Analytics