- 浏览: 845132 次
- 性别:
- 来自: 深圳
文章分类
- 全部博客 (379)
- struts (5)
- hibernate (16)
- spring (16)
- ssh (20)
- MySQL (16)
- 数据库脚本 (2)
- DownLoad (1)
- GAE (5)
- Java (103)
- LoadRunner (2)
- VF (1)
- 学习资料 (24)
- 软件使用 (21)
- 通信类 (4)
- 生活 (3)
- J2ME (1)
- 心理学 (1)
- Linux (26)
- Android (3)
- Oracle (1)
- 面向对象概念&面试准备 (11)
- ExtJs (2)
- Google Map (1)
- Flex (47)
- 算法研究 (1)
- share (20)
- python (1)
- MongoDB (7)
- centos6 (13)
- C++ (8)
- DB2 (3)
- C# (1)
- 代码片段 (24)
- Lucene (2)
- php (1)
- NodeJS (1)
- Express (1)
最新评论
-
shua1991:
已阅,我表示同意。
Eclipse统计代码行数 -
nakedou:
写的不错,挺详细的
在CentOS中使用 yum 安装MongoDB及服务器端配置 -
sjp524617477:
好方法
Eclipse统计代码行数 -
simpletrc:
<script>ale ...
Java写到.txt文件,如何实现换行 -
csdn_zuoqiang:
Apache Ftp Server,目前是1.0.4,非常好的 ...
Apache FtpServer在64位系统下服务不能启动解决方法
import java.awt.BorderLayout; import java.awt.Color; import java.awt.Font; import java.awt.FontMetrics; import java.awt.GradientPaint; import java.awt.Graphics; import java.awt.Graphics2D; import java.awt.Image; import java.awt.Insets; import java.awt.Toolkit; import java.awt.event.MouseEvent; import java.awt.geom.AffineTransform; import java.awt.image.BufferedImage; import javax.swing.ImageIcon; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JMenuItem; import javax.swing.JPopupMenu; public class JImagedPopupMenu extends JPopupMenu { private Font font = new Font("Dialog", Font.BOLD, 13); private ImageIcon imageIcon = null; public JImagedPopupMenu(ImageIcon imageIcon) { this.imageIcon = imageIcon; } public JImagedPopupMenu(String text) { this.imageIcon = createImage(text); } private ImageIcon createImage(String text) { FontMetrics fm = Toolkit.getDefaultToolkit().getFontMetrics(font); int height = fm.stringWidth(text)+20; BufferedImage bi = new BufferedImage(30, height, BufferedImage.TYPE_INT_ARGB); ImageIcon image = new ImageIcon(bi); Graphics2D g2d = bi.createGraphics(); GradientPaint paint = new GradientPaint(0, 0, Color.YELLOW, 30, 0, Color.RED, true); g2d.setPaint(paint); g2d.fillRect(0, 0, bi.getWidth(), bi.getHeight()); AffineTransform at = new AffineTransform(); at.rotate( -Math.PI / 2); g2d.setTransform(at); g2d.setColor(Color.white); g2d.setFont(font); g2d.drawString(text, -height+10, bi.getWidth() / 2); return image; } public Insets getInsets() { Insets insets = (Insets)super.getInsets().clone(); insets.left += imageIcon.getIconWidth(); return insets; } public void paint(Graphics g) { super.paint(g); if (imageIcon != null) { Insets insets = getInsets(); // 每一副图像的位置坐标 int x = insets.left - imageIcon.getIconWidth(); int y = insets.top-2; Image image = imageIcon.getImage(); // 平铺背景图片 while (true) { // 绘制图片 g.drawImage(image, x, y, this); // 如果绘制完毕,退出循环 if ( y > getSize().height) break; y += imageIcon.getIconHeight(); } } } public static void main(String[] args) { final JFrame frame = new JFrame(); frame.setSize(600, 500); frame.setTitle("ImageMenu"); final JImagedPopupMenu menu = new JImagedPopupMenu("www.voland.com.cn"); menu.add(new JMenuItem("Winzip 8.0")); menu.addSeparator(); menu.add(new JMenuItem("Programs")); menu.add(new JMenuItem("Document")); menu.add(new JMenuItem("Settings")); menu.add(new JMenuItem("Search")); menu.add(new JMenuItem("Help and Support")); menu.add(new JMenuItem("Run...")); JLabel label = new JLabel("Right click me to show image popup menu."); label.addMouseListener(new java.awt.event.MouseAdapter() { public void mouseReleased(MouseEvent e) { if (e.isPopupTrigger()) { menu.show(frame, e.getPoint().x, e.getPoint().y); } } }); frame.getContentPane().add(label, BorderLayout.CENTER); frame.show(); } }
发表评论
-
微信JS
2013-10-26 21:17 2096<div class="iteye-blog- ... -
ubuntu下MySQL用source命令导入sql文件出现乱码解决方法
2012-11-18 23:46 1566首先建立数据库的时候指明数据库编码如: CREA ... -
RandomAccessFile
2012-10-18 18:16 986public void run() { try { ... -
java中多种方式读文件
2012-10-18 16:53 985java中多种方式读文件一、多种方式读文件内容。1、按字节读取 ... -
FileChannelMain
2012-10-15 18:12 1116package scan; import java ... -
Apache FtpServer在64位系统下服务不能启动解决方法
2012-06-10 21:29 6917Apache FTPServer是一款用Java开发的 ... -
Java 集合类
2012-06-07 22:03 1794Java 集合类 1. 为什么要了解J ... -
short、int、long与byte之间的转换工具类
2012-05-31 11:05 4526/** * 各基础类型与byte之间的转换 * ... -
Linux Mint 13 配置JAVA 环境
2012-05-24 22:35 26620.1--下载 JAVA ... -
FatJar+Exe4j+Inno Setup 生成可执行的exe文件
2012-04-17 10:54 14641、fatjar 是Eclipse的一个免费的插件。它的 ... -
一个开源的高效全文检索框架(懂C语言可以进来研究下原理)
2012-04-07 23:03 1384示例地址: http://rbbs.sourcefor ... -
批量删除删除CVS文件夹
2012-04-06 16:11 2040@echo On @Rem C:/Users/XPan ... -
JPanel JTextField add Focus 获取焦点解决方案
2012-03-30 21:29 3024public class TabPagePanel ex ... -
JList List<E> Page 分页
2012-03-30 21:28 1766package view.retrieve.comps. ... -
JButton setAction的BUG
2012-03-23 10:53 1312今天在使用JButton的时候,想用setText()setI ... -
自定义JTabbedPane皮肤
2012-03-22 12:05 4741package ui; import java.awt. ... -
两个工具类
2012-03-17 21:27 895package com.retrieve.utils; ... -
两个工具类
2012-03-17 21:27 0package com.retrieve.utils; ... -
mysql、sqlserver、oracle分页,java分页统一接口实现
2012-03-13 17:56 0定义: pageStart 起始页,pageEnd 终止页, ... -
Invalid command: InetLoad::load
2012-03-06 16:41 1370Invalid command: InetLoad::load ...
相关推荐
在Java Swing中,右键菜单主要通过JPopupMenu类来实现。下面我们将深入探讨如何在Java Swing中构建和使用右键菜单。 1. **创建JPopupMenu对象**: 首先,你需要创建一个`JPopupMenu`实例,它是弹出式菜单的基础。...
在Swing中实现鼠标右键功能,主要是通过`MouseListener`监听鼠标事件,特别是`mouseClicked`事件中的右键单击行为。同时,需要使用`JPopupMenu`来创建弹出式菜单,显示用户定义的菜单项。以下是根据提供的代码和描述...
- 在Java Swing中,可以使用`JPopupMenu`来创建右键菜单。例如,通过`JMenuItem`添加菜单项,然后在需要的地方使用`show(Component invoker, int x, int y)`方法显示菜单。 6. **Python编程**: - Python中的...
Java实现窗体右键菜单,简约易操作的窗体菜单,这是一个相当易懂的制作实例。 super( "右键弹出菜单" ); //调用父类构造函数 ChangeColorAction action = new ChangeColorAction(); //菜单项事件处理 ...
在Swing中,`JPopupMenu`类用于创建弹出菜单,`JMenuItem`则用于添加菜单项。可以通过`setInvoker`方法将组件与菜单关联,然后使用`addMouseListener`监听鼠标事件,当右键点击时显示菜单。而在JavaFX中,可以使用`...
在 Java 中,弹出菜单通常是通过 JPopupMenu 类来实现的。今天,我们将学习如何使用 Java 弹出菜单来为 JTextArea 添加右键弹出式菜单,实现复制、粘贴、剪切功能。 一、Java 弹出菜单概述 Java 弹出菜单是一种 ...
Swing中的`JPopupMenu`类是用于创建弹出菜单的核心类,而在JavaFX中,你可以使用`ContextMenu`类来实现相同功能。 2. **事件监听**: 实现右键菜单的关键是添加鼠标事件监听器。在Swing中,你需要添加`MouseListener...
在Java Swing中,我们可以使用`JPopupMenu`类来创建这样的菜单。`JPopupMenu`是 Swing 提供的弹出菜单组件,它可以被关联到一个组件上,当在这个组件上右键单击时显示。以下是一个基本的`JPopupMenu`的创建过程: 1...
首先,我们需要了解Java Swing中的菜单组件。`JMenu`类用于创建菜单,而` JMenuItem`则代表菜单项。以下是如何创建一个简单的菜单: ```java JMenu fileMenu = new JMenu("文件"); JMenuItem openItem = new ...
实现JLabel右键进行响应的操作,摆脱按钮响应,大幅度提高界面的美观
本文将详细介绍如何使用Java Swing中的`JTextArea`组件实现不可修改的文本内容,并定制右键菜单。 #### 二、基础知识 在深入了解实现细节之前,我们先简要回顾一下与本主题相关的基础知识: 1. **JTextArea**: `...
在Java编程中,右键弹出菜单(通常称为上下文菜单或者Context Menu)是一种常见的用户交互方式,特别是在桌面应用程序和图形用户界面(GUI)中。它允许用户在点击鼠标右键时显示一系列与当前选择对象相关的操作选项...
Swing 提供的非常重要的控件之一,本章将对 Swing 的菜单进行介绍,主要包括菜单简介、JMenuBar、JMenuItem、JMenu、在 NetBeans 中使用菜单控件、JCheckBoxMenuItem 与 JRadioButtonMenuItem、JPopupMenu 等内容。...
在Swing中,我们可以使用JPopupMenu类来创建和显示右键菜单。 - **JavaFX**:是Java的一个现代GUI平台,它支持更丰富的图形效果和动画。在JavaFX中,我们可以使用ContextMenu类来实现右键菜单。 2. **创建...
JPopupMenu是Swing中的一个菜单类,它允许我们创建浮动菜单,可以关联到其他组件,如JButton、JFrame等。当触发指定事件时,如鼠标右键点击或者按钮单击,JPopupMenu会出现在关联组件的上方或下方。 2. **事件监听...
在Java Swing中,可以使用`addMouseListener`方法添加监听器。当用户右键点击时,`mouseClicked`方法会被调用。我们需要检查是否是右键点击,并在此时显示弹出菜单: ```java component.addMouseListener(new ...
在Swing中,`JPopupMenu`类是用来创建右键弹出菜单的核心类。`JPopupMenu`可以附加到其他组件,如`JFrame`、`JPanel`或`JButton`等,当用户在这些组件上点击右键时,就会显示该菜单。 在描述中提到的源码里,我们...
1. **JPopupMenu类**: Swing中的`JPopupMenu`类是实现弹出菜单的核心。你可以创建一个`JPopupMenu`实例,然后添加` JMenuItem`对象来表示菜单项。每个`JMenuItem`可以关联一个事件监听器,当用户选择该菜单项时执行...
Java右键弹出菜单,也称为上下文菜单(Context Menu),是Java图形用户界面(GUI)编程中的一个重要组件。在Windows、Linux或Mac等操作系统中,当我们右键点击某个对象时,通常会出现一个包含相关操作的菜单,这就是...
在Swing中,菜单按钮是创建交互式用户界面的关键元素,尤其是对于那些需要多个操作选项的应用程序。本教程将深入讲解Java Swing中的菜单按钮及其使用方法,非常适合初学者。 一、JMenuBar与JMenu 在Swing中,菜单...