- 浏览: 142621 次
- 性别:
- 来自: 苏州
-
文章分类
最新评论
-
yaoweinan:
没有.....
Itext 5.4.0 生成PDF中文不报错,Adobe 不显示 -
马文涛:
我也发现这个问题了,你找到解决办法了吗?
Itext 5.4.0 生成PDF中文不报错,Adobe 不显示 -
coding1688:
博主辛苦了,也可以参考一下这篇文章:四步轻松搞定瀑布流布局ht ...
瀑布流布局个人实现 -
yaoweinan:
嘿嘿,那个只是最笨的办法,实际上是不行的,现在一般的都有sw ...
文件上传(无刷新,带进度条,带网速)下载完整 -
javazzu:
我为啥不行呢
文件上传(无刷新,带进度条,带网速)下载完整
JXLayer 是一个很好的Swing 控件装饰类库,其主要要的优点在于将修饰的一些UI与原本的UI 实现了很好的分离,便于操作和管理。
下面简单介绍一下几个常用的使用方法(API:http://www.jarvana.com/jarvana/view/org/swinglabs/jxlayer/3.0.4/jxlayer-3.0.4-javadoc.jar!/index.html)
JXLayer 此类对象是我们使用JXLayer 最终要使用的对象,其作用就像一个中间件,将我们自己的UI和单独定义的LayerUI 结合在一起,达到最终要的结果。
LayerUI 此类 与XLayer 结合,在LayerUI 的paint 方法中画出你要修饰的图案。并且在这个里面可以监听到控件的事件,这个需要重写eventDispatched(AWTEvent, JXLayer)
LockableUI 此类提供了锁定控件的功能,在以前如果你设置一个JCompent enable 为false,它的子控件依然可以被使用,而此类可以完全实现,并对鼠标图标可以进行自定义。
SpotLightUI 此类简单的说就是在控件上面加一个罩子,可以设置颜色等等。
DebugRepaintingUI 这个类的功能很2, 它能实现的是显示哪些UI 被重画了,相当一个debug 效果。
JScrollPane 这个类提供的功能是鼠标中间键按住之后拖动 可以拖动scrollbar 的效果,可惜在3.0.4版本中我新加的控件不知道哪里去了。
ButtonPanelUI 这个类能干事么? 用了之后没感觉到:(
下面写了一个简单的UI 使用插件
package lyon.study.jxlayer; import java.awt.Color; import java.awt.Cursor; import java.awt.Graphics; import java.util.HashMap; import java.util.Map; import javax.swing.JComponent; import javax.swing.JScrollPane; import org.jdesktop.jxlayer.JXLayer; import org.jdesktop.jxlayer.plaf.LayerUI; import org.jdesktop.jxlayer.plaf.ext.ButtonPanelUI; import org.jdesktop.jxlayer.plaf.ext.DebugRepaintingUI; import org.jdesktop.jxlayer.plaf.ext.LockableUI; import org.jdesktop.jxlayer.plaf.ext.MouseScrollableUI; import org.jdesktop.jxlayer.plaf.ext.SpotLightUI; public class UIPlug{ private static LayerUI<JComponent> drawRoundRectLayerUI; private static Map<JComponent,LockableUI> lockLayers=new HashMap<JComponent,LockableUI>(); public static JComponent drowRoundRect(final JComponent com){ return new JXLayer<JComponent>(com,getLayerUI()); } private static LayerUI<JComponent> getLayerUI() { drawRoundRectLayerUI=drawRoundRectLayerUI!=null?drawRoundRectLayerUI:new LayerUI<JComponent>(){ /** * Comment for <code>serialVersionUID</code> */ private static final long serialVersionUID = 7131940091813767911L; @Override public void paint(Graphics g, JComponent jComponent) { super.paint(g, jComponent); final int width = jComponent.getWidth(); final int height = jComponent.getHeight(); g.setColor(Color.BLUE); g.drawRoundRect(5,5,width-10,height-10,90,90); g.dispose(); } }; return drawRoundRectLayerUI; } public static JComponent doLockUI(final JComponent com,final boolean isLocked){ LockableUI lockableUI; if(lockLayers.containsKey(com)){ lockableUI = lockLayers.get(com); if(lockableUI!=null){ lockableUI.setLocked(isLocked); } return com; }else{ lockableUI=new LockableUI(); lockableUI.setLockedCursor(Cursor.getDefaultCursor()); lockLayers.put(com, lockableUI); final JXLayer<JComponent> layer = new JXLayer<JComponent>(com, lockableUI); lockableUI.setLocked(isLocked); return layer; } } public static JComponent addColorCoverLayer(final JComponent com){ SpotLightUI spotLightUI = new SpotLightUI(); spotLightUI.setShadowEnabled(true); return new JXLayer<JComponent>(com,spotLightUI); } public static JXLayer<JScrollPane> autoScrollPanel(final JScrollPane com){ return new JXLayer<JScrollPane>(com,new MouseScrollableUI()); } public static JComponent debugPanel(final JComponent com){ DebugRepaintingUI debugUI = new DebugRepaintingUI(); JXLayer<JComponent> layer = new JXLayer<JComponent>(com, debugUI); return layer; } public static JComponent buttonPanel(final JComponent com){ ButtonPanelUI ui=new ButtonPanelUI(); return new JXLayer<JComponent>(com, ui); } }
发表评论
-
写自己的框架,让别人笑掉大牙吧(IOC2)
2013-04-22 14:23 922上篇中主要使用配置文件来定义一些类实例之间的组织关系 ... -
关于java中对象属性值的校验的思考
2013-04-15 14:09 1586现在在java 开发中经常会遇到要交验某个obje ... -
JTextArea ScrollBar 自动滚动
2013-01-11 16:40 1037前几天在JScrollPanel 中放了一个JEditorPa ... -
java 动态编译及执行实现Web式java开发
2012-11-29 17:05 964废话不说,让大家等了这么久,先看看截图 : 编译 ... -
MigLayout 使用
2012-11-07 17:03 999如果你还在用用Java 做桌面程序,如果你还在用java ... -
关于Jtextinpt 内容的限制
2012-09-28 15:00 834在JTextInput 限制输入内容,这个一般的通过按键输入进 ... -
构造中的多态
2012-08-25 23:19 889各位仁兄,前几日我在 ... -
Swing JtableModel 使用之旅
2012-07-29 03:25 1067JTable 是我们一般展示数据的一个很好的Grid组建,个人 ... -
模版模式(TemplatePattern)
2012-07-15 11:08 820模版模式分为2个部分 1.抽象模版 2.具体模版 ... -
JTable 使用简要说明
2012-07-02 16:30 914JTable 是swing 包中提供显示二维表的控件,一般被 ... -
java awt 布局
2012-07-01 17:50 1321汗颜啊,昨天到今天写一个awt界面,布局差点把人恶心死,现在总 ... -
门面模式(Facade Pattern)
2012-06-10 19:37 1031门面模式(Facade Pattern):门面模式在我个人感觉 ... -
代理模式例子
2012-06-04 15:07 1009代理模式简单点就和现实中一样,只是代理实质性的还是别人在做。比 ... -
策略模式应对旅行中出现的问题
2012-06-04 14:21 948策略模式是针对在进行过程中出现一些问题的应对模式。一般可以分为 ... -
java 工厂模式简单介绍及例子
2012-06-03 23:16 1110java中工厂模式在java ee中经常碰见,是一种常见的模式 ... -
java 动态代理及自定义标注使用例子
2012-06-03 00:14 1289java中动态代理,在实际应用中有着很大的作用,譬如在一些类似 ... -
flex3 socket+java
2012-02-06 12:10 1149首先解决的问题是flex的沙箱问题,由于flex 连接服务器存 ... -
java 自定义注解
2012-01-30 16:09 873写道 package com.my;import j ... -
图片裁剪,缩放 批处理
2012-01-07 15:25 1087package dwr.demo; import ... -
java System.Properties
2011-10-26 13:19 773使用Properties.getProperty方法的参数也可 ...
相关推荐
3. **示例代码**:以下是一个简单的示例,展示了如何使用`SwingUtilities.invokeLater()`方法来更新Swing组件: ```java import javax.swing.SwingUtilities; import javax.swing.JLabel; public class ...
内容概要:本文深入剖析了安川MP7系列工业控制系统的关键源码,重点介绍了运动轨迹规划、通信协议处理以及故障处理机制等方面的技术细节。通过对实际代码片段的解读,揭示了该系统在硬件寄存器直接访问、特殊功能码处理等方面的独特之处。同时,文中还分享了一些基于实践经验得出的重要参数设置及其背后的故事,如特定摩擦补偿系数的选择原因等。 适合人群:从事工业自动化领域的工程师和技术人员,尤其是对安川产品有一定了解并希望深入了解其内部工作机制的专业人士。 使用场景及目标:帮助读者掌握安川MP7系列控制器的工作原理,提高对类似系统的维护能力和故障排查效率。对于想要进一步研究或二次开发该系统的开发者来说,也能提供宝贵的参考资料。 其他说明:文章不仅限于理论讲解,还包括了许多来自一线的实际案例和经验教训,使读者能够更好地理解和应用所学知识。
自动化测试与脚本开发_Python3_pynput_键盘鼠标操作录制执行代码生成工具_用于自动化测试_脚本录制_重复操作模拟_宏命令生成_提高工作效率_支持GUI界面_跨平台兼容_
嵌入式八股文面试题库资料知识宝典-深入分析Windows和Linux动态库应用异同.zip
嵌入式八股文面试题库资料知识宝典-C语言总结.zip
内容概要:本文详细探讨了风储直流微电网中母线电压控制的关键技术。首先介绍了风储直流微电网的背景和发展现状,强调了母线电压控制的重要性。接着阐述了永磁风机储能并网技术,解释了永磁风机如何通过直接驱动发电机将风能转化为电能,并确保与电网的同步性和稳定性。然后深入讨论了双闭环控制MPPT技术,这是一种通过内外两个闭环控制系统来实现实时调整发电机运行参数的技术,确保风机始终处于最大功率点附近。最后,文章探讨了储能控制母线电压平衡的方法,即通过储能系统的充放电操作来维持母线电压的稳定。结论部分指出,通过这些技术的有机结合,可以实现对风储直流微电网的有效管理和优化控制。 适合人群:从事新能源技术研发的专业人士、电气工程研究人员、风电系统工程师。 使用场景及目标:适用于希望深入了解风储直流微电网母线电压控制策略的研究人员和技术人员,旨在帮助他们掌握最新的控制技术和方法,以提高系统的稳定性和效率。 其他说明:文章还对未来风储直流微电网的发展进行了展望,指出了智能化和自动化的趋势,以及储能技术的进步对系统性能的影响。
嵌入式八股文面试题库资料知识宝典-C++object-oriented.zip
内容概要:文章详细介绍了HarmonyOS的目录结构及其重要性,从整体框架到核心目录的具体功能进行了全面剖析。HarmonyOS凭借其分布式架构和跨设备协同能力迅速崛起,成为全球操作系统领域的重要力量。文章首先概述了HarmonyOS的背景和发展现状,强调了目录结构对开发的重要性。接着,具体介绍了根目录文件、AppScope、entry和oh_modules等核心目录的功能和作用。例如,AppScope作为全局资源配置中心,存放应用级的配置文件和公共资源;entry目录是应用的核心入口,负责源代码和界面开发。此外,文章还对比了HarmonyOS与Android、iOS目录结构的异同,突出了HarmonyOS的独特优势。最后,通过旅游应用和电商应用的实际案例,展示了HarmonyOS目录结构在资源管理和代码组织方面的应用效果。; 适合人群:具备一定编程基础,尤其是对移动操作系统开发感兴趣的开发者,包括初学者和有一定经验的研发人员。; 使用场景及目标:①帮助开发者快速理解HarmonyOS的目录结构,提高开发效率;②为跨设备应用开发提供理论和技术支持;③通过实际案例学习资源管理和代码组织的最佳实践。; 其他说明:HarmonyOS的目录结构设计简洁明了,模块职责划分明确,有助于开发者更好地管理和组织代码和资源。随着万物互联时代的到来,HarmonyOS有望在开发便利性和生态建设方面取得更大进展,吸引更多开发者加入其生态系统。
内容概要:本文详细介绍了飞轮储能充放电控制的Simulink仿真模型,重点在于采用永磁同步电机的矢量控制和dq轴解耦控制策略。充电时,外环控制转速,内环控制dq轴电流;放电时,外环控制直流母线电压,内环同样控制dq轴电流。文中还讨论了硬件与软件环境的选择,以及仿真模型的调试与运行情况,最终得出该模型具有良好的跟随性能和波形完美度。 适用人群:从事电力电子系统、储能技术和Simulink仿真的研究人员和技术人员。 使用场景及目标:适用于需要对飞轮储能系统进行深入研究和仿真的场合,旨在提高充放电效率和稳定性,满足不同应用场景的需求。 其他说明:该仿真模型已调试完成,可以直接用于进一步的研究和实际应用,为未来的飞轮储能技术研发提供了有价值的参考。
嵌入式八股文面试题库资料知识宝典-北京瑞德方科技.zip
嵌入式八股文面试题库资料知识宝典-同方万维硬件测试工程师.zip
1_15套python PDF格式.zip
内容概要:本文详细介绍了三相三电平整流器的仿真过程及其性能分析。文中首先概述了三相三电平整流器的基本概念及其在电力系统中的重要作用,接着重点探讨了电压电流双闭环控制方式的工作原理和优势,以及SPWM调制技术的具体应用。通过仿真文件展示了整流器在不同条件下的响应情况,验证了这两种技术的有效性和优越性。最后,作者表达了对未来实际应用的期望。 适合人群:从事电力电子研究的技术人员、高校相关专业师生、对电力控制系统感兴趣的工程爱好者。 使用场景及目标:适用于希望深入了解三相三电平整流器工作原理和技术细节的研究人员;目标是在理论基础上掌握电压电流双闭环控制和SPWM调制的实际应用方法。 其他说明:本文提供的仅为仿真文件,未涉及实物实验数据。
嵌入式八股文面试题库资料知识宝典-恒光科技.zip
嵌入式八股文面试题库资料知识宝典-北京天华威视科技有限公司面试题.zip
嵌入式八股文面试题库资料知识宝典-微软研究院笔试题目的答案.zip
Arduino UART实验例程,开发板:正点原子EPS32S3,本人主页有详细实验说明可供参考。
嵌入式八股文面试题库资料知识宝典-朝歌数码.zip
嵌入式八股文面试题库资料知识宝典-Cortex系列.zip
嵌入式八股文面试题库资料知识宝典-中科中科长青笔试题.zip