- 浏览: 748422 次
- 性别:
- 来自: 上海
-
文章分类
- 全部博客 (419)
- 杂软粉墨 (2)
- 创意灵感 (3)
- 经验记录 (137)
- 开源轨迹 (2)
- sip-communicator (2)
- 闲侃杂谈 (8)
- 问题交流 (24)
- 概念模式 (32)
- 难点备案 (5)
- JwChat (1)
- 中国象棋 (1)
- 教育探索 (6)
- 英语研究 (58)
- 星际争霸 (1)
- 电信知识 (1)
- 软件架构 (3)
- 哲学探索 (26)
- 算法灵魂 (8)
- 近视探索 (6)
- 数学数学 (3)
- 牛角钻尖 (23)
- 至强文言 (3)
- 数据结构 (1)
- 宇宙物理 (2)
- 网络架构 (3)
- 游戏领域 (4)
- 图形处理 (2)
- 修炼之路 (8)
- 读书天地 (20)
- 编解乱码 (2)
- 概念探索 (8)
- 格物致知 (1)
- 其它语言 (1)
- 测试领域 (3)
- 文化风流 (1)
- JQuery (1)
- 網頁領域 (1)
- Unix/Linux (1)
- Inside JVM (1)
- 异常分析 (1)
最新评论
-
suyujie:
引用
HTML <a> 标签灰显禁用 -
suyujie:
HTML <a> 标签灰显禁用 -
suyujie:
HTML <a> 标签灰显禁用 -
suyujie:
HTML <a> 标签灰显禁用 -
iamzhoug37:
您能说一下"局部变量不受文本顺序限制" 是 ...
声明前为什么能赋值却不能输出,都是使用
import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.MouseEvent; import java.awt.event.MouseListener; import javax.swing.JFrame; import javax.swing.JMenuItem; import javax.swing.JPopupMenu; import javax.swing.JScrollPane; import javax.swing.JTree; import javax.swing.tree.DefaultMutableTreeNode; import javax.swing.tree.DefaultTreeCellEditor; import javax.swing.tree.DefaultTreeCellRenderer; import javax.swing.tree.DefaultTreeModel; import javax.swing.tree.TreePath; import javax.swing.tree.TreeSelectionModel; public class Test extends JFrame implements MouseListener,ActionListener { private static final long serialVersionUID = 1L; JTree tree; JPopupMenu popMenu; JMenuItem addItem; JMenuItem delItem; JMenuItem editItem; public Test() { tree = new JTree(); tree.setEditable(true); tree.getSelectionModel().setSelectionMode(TreeSelectionModel.SINGLE_TREE_SELECTION); tree.addMouseListener(this); tree.setCellEditor(new DefaultTreeCellEditor(tree, new DefaultTreeCellRenderer())); getContentPane().add(tree); setSize(200, 200); popMenu = new JPopupMenu(); addItem = new JMenuItem("添加"); addItem.addActionListener(this); delItem = new JMenuItem("删除"); delItem.addActionListener(this); editItem = new JMenuItem("修改"); editItem.addActionListener(this); popMenu.add(addItem); popMenu.add(delItem); popMenu.add(editItem); getContentPane().add(new JScrollPane(tree)); } public void mouseClicked(MouseEvent e) { } public void mouseEntered(MouseEvent e) { } public void mouseExited(MouseEvent e) { } public void mousePressed(MouseEvent e) { TreePath path = tree.getPathForLocation(e.getX(), e.getY()); // 关键是这个方法的使用 if (path == null) { return; } tree.setSelectionPath(path); if (e.getButton() == 3) { popMenu.show(tree, e.getX(), e.getY()); } } public void mouseReleased(MouseEvent e) { } public void actionPerformed(ActionEvent e) { DefaultMutableTreeNode node = (DefaultMutableTreeNode) tree.getLastSelectedPathComponent(); if (e.getSource() == addItem) { ((DefaultTreeModel) tree.getModel()).insertNodeInto(new DefaultMutableTreeNode("Test"), node, node .getChildCount()); tree.expandPath(tree.getSelectionPath()); } else if (e.getSource() == delItem) { if (node.isRoot()) { return; } ((DefaultTreeModel) tree.getModel()).removeNodeFromParent(node); } else if (e.getSource() == editItem) { tree.startEditingAtPath(tree.getSelectionPath()); } } public static void main(String[] args) { Test frame = new Test(); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setVisible(true); } }
发表评论
-
关于方法访问控制符protected
2012-11-29 10:38 1268http://bbs.csdn.net/topics/3902 ... -
一个基本问题关于引用的
2012-05-15 10:20 1130问: int a = 1; Integer b = new ... -
我對面向對象和過程的理解。
2012-05-02 08:30 1068我的一些理解。 面向过程,是对客观现象的描述,感觉是有一个上 ... -
stack and heap
2012-01-13 23:17 1054我觉得是根据应用方式 和本身特性 才将内存分区的,目的是提 ... -
program experience conclusion
2011-07-11 15:35 10681. check parameters for validit ... -
PreparedStatement's possible designated parameter
2011-04-29 13:45 991though it's nearly impossible t ... -
clean Log4j
2011-04-12 11:19 1069import org.apache.log4j.BasicCo ... -
about abstract class
2011-04-02 10:34 871yes, we do know abstract class ... -
cvs operations on linux
2011-03-25 09:40 1016http://www.linuxhowtos.org/Syst ... -
regex to exchange two parts
2011-03-24 17:09 1096public class Test { public ... -
About the database locking
2011-03-09 11:02 967http://en.wikipedia.org/wiki/Lo ... -
how to send soap message in java
2011-03-08 10:29 1898import java.io.BufferedReader; ... -
About ShutDownDemo
2011-03-07 15:02 985public class ShutdownDemo { p ... -
How do you know if an explicit object casting is needed
2011-02-24 16:33 1192通俗来讲,不可能将一只是猫的动物强转为狗 再说Graphic ... -
有关MimeUtility
2011-02-24 13:11 3368import java.io.UnsupportedEncod ... -
C#连接sql server 2008的一件2事
2011-02-24 09:01 2157once upon a time, i came upon o ... -
Shadowing, Overriding, Hiding and Obscuring
2011-02-22 15:15 1168当子类属性与父类属性重叠时 这种叫法上是shadowi ... -
JAXP usage
2011-02-16 16:07 1104import java.io.ByteArrayInputSt ... -
运行一个类,如果classpath中路径带空格就加双引号
2011-02-11 11:25 2810注意是这样加: java -cp .;"d:\my ... -
关于ClassPath中的current directory
2011-01-28 16:40 1156Given: 1. package com.company. ...
相关推荐
这里的`component`是你希望添加右键菜单的组件,如`JTable`, `JTree`, 或者自定义的`JPanel`。 4. **处理菜单事件**: 当用户点击菜单项时,你可以通过添加`ActionListener`来处理这些事件。例如: ```java item...
本项目聚焦于`JTree`组件的使用,尤其是在结合数据库和右键菜单功能的情况下。`JTree`是Swing中表示层次数据的一种控件,常用于展示文件系统、组织结构或其他具有层级关系的数据。 首先,`JTree`允许用户通过节点来...
JFrame frame = new JFrame("右键菜单示例"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setSize(300, 200); // 将菜单添加到组件的MouseListener frame.addMouseListener(new ...
1、初始化 2、三个经常使用的取值函数 3、根据node得到path:4、根据Path展开到该节点 5、根据path设定该节点选定 6、选中节点的方法 7、滚动到可见位置 8、给JTree添加右键弹出菜单 9、关于JTree的展开 10、如何...
5. **用户交互**:包含如何处理用户的点击、拖放操作,以及如何添加右键菜单。 6. **性能优化**:讨论懒加载策略,仅在需要时加载子节点以提高大型树的性能。 7. **定制外观**:介绍如何使用`TreeCellRenderer`改变...
#### (五) JTree右键菜单实现编辑、添加、删除节点 **Test.java源代码**:示例代码展示了如何在JTree上添加右键菜单,并实现编辑、添加、删除等功能。 #### (六) 功能齐全的JTree例子 **TreeEditTest.java源代码*...
- **右键菜单**:可集成右键点击菜单,扩展更多功能。 7. **兼容性**: JTree2.0通常兼容主流浏览器,如Chrome、Firefox、Safari、Edge等,但可能对较旧版本或非主流浏览器支持有限。 8. **实际应用**: - 文件...
在Java Swing库中,`JTree`是一个组件,用于显示...在实际项目中,还可以根据需求进行进一步的定制,比如添加拖放功能、右键菜单等。在学习和实践过程中,参考同行们的实例会非常有帮助,这有助于理解和掌握这个技术。
在Java编程中,树型菜单是一种常见的用户界面元素,它以层次结构展示数据,便于用户进行导航和操作。本文将详细讲解如何使用Java来构建一个动态的、可交互的树型菜单,包括从数据库获取数据、创建树节点、实现添加和...
介绍了树控件中的日期控件,树菜单控件,右键菜单控件,会对JTree有更深的了解。
为了满足不同的业务需求,Tree菜单往往需要支持自定义扩展,如添加图标、自定义右键菜单、节点拖放等。开发者需要设计灵活的API和插件机制,让用户可以轻松扩展功能。 总结来说,"Tree菜单上下移动"是软件中常见的...
3. **右键菜单**:提供操作选项,如“打开”文件,这可能是通过文件选择对话框实现的,让用户选择要读取的INI文件。 4. **编辑器**:允许用户直接在程序中修改INI文件的内容。 5. **实现TreeModel接口**:为了将数据...
- 用户可以通过点击节点来展开、折叠,或者通过右键菜单提供复制、粘贴、删除等操作。 5. **优化性能**: - 对于大型文件系统,一次性加载所有节点可能导致性能问题。可以使用懒加载策略,只在用户展开节点时加载...
本系统中,可能包括JTable用于显示学生信息,JTree展示层级关系,以及JPopupMenu实现右键菜单。 3. **数据库管理**:系统与MySQL数据库进行交互,存储和检索学生数据。通过JDBC(Java Database Connectivity)接口...
1. **实例10:右键弹出菜单** - 这个例子展示了如何在Java Swing中实现右键点击事件,创建上下文敏感的菜单。通过MouseListener和PopupMenu类,你可以学习到事件监听和用户交互设计的基本原理。 2. **实例1:产生...
jframe显示方式 JOptionPane提示信息 jtree media mp3 java sql2000 java sql server java sql语句 标题栏图标 多线程 鼠标右键菜单 新建文件夹 在jframe 上画直线 Java2-9JDBC编程)----高手怎样炼成的!
4. **菜单和菜单项**:JMenu和 JMenuItem 允许创建下拉菜单,JPopupMenu 可以实现右键菜单。通过实例,你可以学会如何组织菜单结构和响应菜单事件。 5. **表(Table)和树(Tree)组件**:JTable用于显示二维数据,...
2. 联系人管理:包括添加、删除和查找联系人,这些功能可以通过菜单栏或右键菜单实现。 3. 在线状态显示:使用图标或文字表示用户在线、离线等状态,可以使用JLabel和ImageIcon配合完成。 4. 好友分组:使用JTree...