
swing
梦科
这个作者很懒,什么都没留下…
展开
-
Java实现窗体隐藏
自己写java程序从开始接触到现在有近两年的时间了,一直还没有怎么接触到j2ee方面的知识,比如说那些常用的框架(struts、spring、hibernate),自己都还没接触过。最近做项目又做到与swing相关的东西了。现在又只好来学习学习swing方面的知识,自己对这方面还是比较感兴趣的。下面的实现窗体隐藏。原文参考这里。该代码实现了对窗体到达屏幕边缘时自动隐藏,并在鼠标经过时自动显示。并能用鼠标随意拖动。代码如下:package com.rosedata;import jav原创 2010-08-03 20:07:00 · 11849 阅读 · 2 评论 -
利用层实现ToolTip,利用图形组合实现不规则的ToolTip
利用层实现ToolTip,利用图形组合实现不规则的ToolTip。这里源码来自五斗米先看效果:源码:import java.awt.BorderLayout;import java.awt.Color;import java.awt.Dimension;import java.awt.Font;import java.awt.FontMetrics;import ja原创 2012-03-10 16:26:17 · 2078 阅读 · 0 评论 -
不规则窗体形状的ToolTip
前一篇利用层实现ToolTip,利用图形组合实现不规则的ToolTip 是实现不规则窗体的ToolTip的方法,该方法虽然实现了要求,但却有两点不足:第一:该方法太笨拙,每个需要ToolTip的组件都得重新去设置一次新的ToolTip类;第二:在ToolTip超出窗体边缘时,没法显示超出部分。 于是乎觉得这样处理是不正确的,定有其他方法来更好的实现。所以在网上找了下。找了N久原创 2012-03-12 23:33:19 · 2712 阅读 · 1 评论 -
为JTabbedPane添加缩略图
如果JTabbedPane有很多页签,而每个页签的标题起得不是太直观的话,用户往往很难发现哪个页签是自己想要的。如果要求用户一个个点开每个页签去寻找,这显然是很不友好的做法。 还有一种做法是为每个页签添加一个普通的文本提示框来描述这个页签的功能。但俗话说“A Picture is Worth a Thousand Words”,如果给这个页签的一个缩略图提示框的话应该能起到更好的原创 2012-03-14 21:03:08 · 2141 阅读 · 0 评论 -
让swing正确显示gif图片
今天美工做了一幅gif的图片,我放到JLabel里面去,gif图片闪动得特别厉害。以为美工提供的图片有问题,又双击用IE打开,却显示正常。心想应该是java组建对gif图片显示的问题。网上查了下swing对gif的显示。果不其然,是swing对gif的显示问题。下面整理下处理swing正确显示gif图片的问题。 首先需要对Gif这种图片格式有一些基本认识。第一:Gif由一系列Ima原创 2012-04-20 00:28:34 · 6136 阅读 · 4 评论 -
Swing 带标题栏的右键菜单
在Windows的“开始”菜单上,会在菜单左侧显示一幅图像。很多基于Windows的软件也有类似效果的菜单。用Java Swing可以制作出类似效果的菜单吗?答案当然是肯定的,而且非常简单。 我们首先从Swing的JPopupMenu组件进行扩展,让其接受一个图片,显示在左侧;或者接受一个字符串,动态生成图片后,在显示在左侧。为 了避免准备图片的麻烦,我们就以动态生成内存图片为例,转载 2013-02-19 21:55:52 · 4112 阅读 · 1 评论 -
Swing 带标题栏的右键菜单 增强版
这里主要通过PopupFactory来实现对菜单或右键弹出菜单添加标题,而不用从写JPopupMenu 或JMenu 。效果如下图:右键菜单:JMenu:代码如下:import java.awt.*;import java.awt.event.MouseEvent;import java.awt.geom.AffineTransform;import java.a原创 2013-02-19 22:59:26 · 6439 阅读 · 0 评论 -
IP地址格式输入文本框
IP地址格式输入文本框。话不多说,直接贴图:这里写了三个类://监听类KeyBoardListener.java/** * 数值输入文本框。 * 该数值输入文本框具有: * 设置最大值; * 设置最小值; * 值限制; *原创 2011-08-04 21:59:15 · 9079 阅读 · 0 评论 -
统一设置Swing组件的背景色和字体
统一设置Swing组件的背景色和字体。可以在加载组件之前对组件的背景色和字体作统一的设置。设置代码如下:Enumeration keys = UIManager.getDefaults().keys(); Object key = null; Object value = null; while (keys.hasMoreElements()) { key = key原创 2012-03-08 10:55:43 · 6521 阅读 · 0 评论 -
java 对象序列化实现复杂UI对象状态的保存。
有时我们在遇到要对复杂对象的状态进行保存时,常常难以处理对象的状态。比如如图所示遇到的情况:我们要在点击OK按钮时要保存该界面的状态,而在点击Cancel按钮时要取消该次界面的操作,回到之前界面的状态。如果在点击Cancel状态时,该界面的数据状态和初始化一致,则下次我们弹出该对话框时,直接重新初始化该对话框就对了。可是如果之前我们已经对该界面进行了操作。要在点击Cancel后,再次显示该原创 2011-11-05 23:19:47 · 2196 阅读 · 0 评论 -
JAVA实现圆角窗体
现在开发一个窗体程序,经常要求用圆角窗体。而在Windows 经典外观下,直接写出来的窗体却是方型的。在windows 7、windows server2008 的外观下,就已经是圆角的了。这里我们手动实现圆角,从而与系统外观不相关。通过sun的内部api(包含在jdk中)来实现。这里只需调用一个方法就OK:AWTUtilities.setWindowShape(win, new原创 2012-02-26 16:52:16 · 10270 阅读 · 5 评论 -
不对窗体进行边框装饰后,实现对鼠标事件的监控
如果对JFrame调用了方法setUndecorated(true);,那么窗体将没有标题栏,以及标题栏上的关闭、最大化、最小化菜单了。这是要实现对鼠标的监控就必须自己手动去添加鼠标监听。下面代码就是实现对鼠标的监听,从而改变窗体的大小。(这里没有实现添加关闭、最大化、最小化按钮) /** * 监听鼠标事件,实现鼠标对窗体大小的改变 * * @author原创 2012-02-26 17:15:16 · 1596 阅读 · 1 评论 -
java 写的日历控件
下面是自己写的日历控件,在开发中可以当做一个插件来用。该插件共包括:CalendarPop.java//日历控件主类ActionButtonListener.java//监听动作按钮的监听器DayClickListener.java//监听DayPanel的点击事件监听器1DayCompCreateListener.java//监听DyPanel创建的监听器DayPanel.j原创 2010-12-12 23:43:00 · 14853 阅读 · 2 评论 -
JScrollPane实现自动滚动到底部
以下内容摘抄自网上多个地方:1. JTable( 放在JScrollPane中 )中加入一行后, 然后让其获得焦点且滚动条自动下来!int rowCount = table.getRowCount();table.getSelectionModel().setSelectionInterval(rowCount-1, rowCount-1);Rectangle rect = t转载 2011-12-22 14:02:34 · 3718 阅读 · 0 评论 -
UIManager可设置的各种属性
UIManager可设置的各种属性AbstractButton.clickText <br />AbstractDocument.additionText <br />AbstractDocument.deletionText <br />AbstractDocument.redoText <br />AbstractDocument.styleChangeText <br />AbstractDocument.undoText <br />AbstractUndoableEdit.redoText <br原创 2010-09-11 11:57:00 · 2955 阅读 · 0 评论 -
JTabbedPane选项卡上添加组件
JTabbedPane组件为我们提供了一种非常好的方法在窗体上显示很多的控件。我们可以将不同类别的控件放到不同的Tab页上,然后通过需要点击相应的Tab页。在传统的 Tab页上只能防止文本的图标。而在 Java SE 6中使我们可以直接将控件放到 Tab上。我们可以通过 setTabComponentAt方法将控件放到Tab上。这个方法有两个参数,一个是Tab的索引,另一个是要放置的对象。JTabbedPane pane = new JTabbedPane();pane.setTabComponentA转载 2010-09-11 11:26:00 · 26888 阅读 · 2 评论 -
JComboBox 组合框条目渲染(JComboBox添加对象选项)
如何在JComboBox中添加对象,如果直接将对象加入进去,则只会看到该对象的toString()方法输出的内容。如:JPanel panel = new JPanel();panel.add(new JLable("选项"));JComboBox comboBox = new JComboBox(new JPanel(){panel});则会在组合条目中会显示为如下图所示:要如何才能将对象加入到JComboBox中呢?先来看一个eclipse中的对字体设置颜色的选择组合选项示意原创 2010-10-14 20:23:00 · 8144 阅读 · 1 评论 -
[转]JTable的自动换行处理
下面是一个简单示例: 1.创建一个简单的JTable,注意在setDefaultRenderer方法class C extends JFrame { public C() { JTable tbl = new JTable(new String[][]{{ "JTable 里单元格内容的显示器是 TableCellRenderer。", "默认的显示器(DefaultTableCellRenderer)转载 2010-10-29 14:41:00 · 6359 阅读 · 0 评论 -
java 画带箭头的直线
最近需要用到java带箭头的直线,在网上收了一下,这里主要是来自网上,代码部分只是做了很小的一部分修改。自己还一直没有理解是怎么计算箭头的坐标的。看来高中学的几何知识都搞忘咯。不说这些了,先来看一看运行的效果。具体代码如下:package com.mengke.j2se.scpture;import java.awt.*;import javax.swing.*;import java.awt.event.MouseEvent;import java.awt.event原创 2010-12-23 22:25:00 · 16210 阅读 · 6 评论 -
带下拉箭头的按钮(JSplitButton)
最近需要用到带下拉箭头的按钮这样的组件,本来以为java是自带的有,在网上搜了N次,就是没有收到,最后就只有自己写了。写了几次,几次都觉得难看,后来又去网上搜,还是很令我失望,最后自己又硬着头皮来重写原来的了。现在终于写了一个自己比较满意的出来。先来看哈截图。效果基本上还看得过去。下面是具体代码:/*** All rights reserved,2010,mengke*/package com.mengke.j2se.swing;import java.awt.BorderL原创 2011-01-15 23:58:00 · 5113 阅读 · 0 评论 -
直接按键设置组件的快捷方式
在很过界面设计中要求给组件设置热键,而这些热键可以由用户修改。用户在修改时只需按键就可以直接操作,这样很方便。这里主要就是将如何从键盘的输入中获取正确的快捷键设置。下面直接插入代码:/** *All rights reserved,2010,mengke */package com.mengke.j2se.util.test;import java.awt.Dimension;import java.awt.event.KeyEvent;import java.awt.原创 2011-01-19 00:31:00 · 1874 阅读 · 0 评论 -
具有删除功能的下拉菜单按钮。类似于QQ登录框的用户输入框
<br />具有删除功能的下拉菜单按钮。类似于QQ登录框的用户输入框。先来看效果图:<br /><br />该下拉框,具有的功能为:<br />1、编辑框和弹出的菜单具有图片功能。<br />2、在下拉菜单中选择的菜单具有放大功能。<br />3、编辑框具有默认图标设置功能。<br />4、下拉菜单项具有删除功能。(只有下拉菜单在鼠标经过时才显示删除按钮)<br />5、对菜单项的操作具有监听接口。(接口类:MItemListeners)<br /> <br />下面贴出程序:<br />MDeleteCo原创 2011-05-17 10:18:00 · 4532 阅读 · 6 评论 -
Java创建不规则窗体
用java创建不规则的窗体。使窗体更具有新颖的特点。java jdk-6u10增加了两个重要的功能:透明窗体和不规则窗体。这两个功能使得swing也可以做出vista下的玻璃效果来了 。透明窗体:通过com.sun.awt.AWTUtilities.setWindow原创 2011-10-17 22:25:18 · 5801 阅读 · 1 评论 -
Dialog里监听ESC按键事件
一个JDialog,焦点在任何控件上的时候,当ESC按键或其他键事件发生时,想关闭这个窗口,或者激活别的事件的方法。在直接用JDialog时,用addKeyListener方法添加对键盘事件的监听,发现现不能监听到ESC事件。这里继承JDialog 覆盖父类的createRootPane()方法,添加对键盘ESC的监听。当然也可以实现对其他键盘的监听。示例代码如下:package co原创 2011-10-22 00:43:41 · 6267 阅读 · 0 评论 -
Swing Synth外观定制UI
Swing Synth外观定制UI关键字: swing synth 本文将深入透视 Synth 外观,它是 Java 5.0 中为 Swing 引入的最新内容。通过为 Java UI 编程引入“皮肤”的概念,Synth 使开发人员可以为应用程序创建和部署定制的外观。软件工程师 Michael Abernethy 将带您从头开始逐步构建一个具有 synth 外观的应用程序,让您充分了解 Synth 的概念。阅读本文之后,您应该可以在短时间内创建具有专业外观的 UI。 就在 Sun 一如既往地试图“再次引入转载 2010-09-11 12:26:00 · 2185 阅读 · 0 评论