社区
Java SE
帖子详情
java awt中负责消息分派的函数在哪个类中?
Robi
2002-11-29 08:19:00
系统消息是怎么被应用程序获取,又是怎么定位到对应底消息(事件)处理函数的?
...全文
34
6
打赏
收藏
java awt中负责消息分派的函数在哪个类中?
系统消息是怎么被应用程序获取,又是怎么定位到对应底消息(事件)处理函数的?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
junnef
2002-11-30
打赏
举报
回复
java的API类好多都是用c\c++写的,应该和c\c++中获得的方法一郅。
Robi
2002-11-30
打赏
举报
回复
还是不对,我的问题是,鼠标事件消息本来是在系统堆栈里的,他们是怎么被java运行环境所获取,然后又是怎么调用该消息对应的界面对象的监听器的?
可能涉及到底层的问题
junnef
2002-11-29
打赏
举报
回复
//下面加入鼠标事件
tree.addMouseListener(new MouseAdapter()
{
public void mouseClicked(MouseEvent me)
{
doMouseClicked(me);
}
});
}
//鼠标动作
void doMouseClicked(MouseEvent me)
{
TreePath tp=tree.getPathForLocation(me.getX(),me.getY());
if(tp!=null)
jtf.setText(tp.toString());
else
jtf.setText("");
}
junnef
2002-11-29
打赏
举报
回复
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.tree.*;
/*
<applet code="JtreeEvents" width=400 height=200>
</applet>
*/
public class JTreeEvents extends JApplet
{
JTree tree;
JTextField jtf;
public void init()
{
Container contentPane=getContentPane();
contentPane.setLayout(new BorderLayout());
DefaultMutableTreeNode top=new DefaultMutableTreeNode("Options");
DefaultMutableTreeNode a=new DefaultMutableTreeNode("A");
top.add(a);
DefaultMutableTreeNode a1=new DefaultMutableTreeNode("A1");
a.add(a1);
DefaultMutableTreeNode a2=new DefaultMutableTreeNode("A2");
a.add(a2);
DefaultMutableTreeNode b=new DefaultMutableTreeNode("B");
top.add(b);
DefaultMutableTreeNode b1=new DefaultMutableTreeNode("B1");
b.add(b1);
DefaultMutableTreeNode b2=new DefaultMutableTreeNode("B2");
b.add(b2);
DefaultMutableTreeNode b3=new DefaultMutableTreeNode("B3");
DefaultMutableTreeNode b31=new DefaultMutableTreeNode("B31");
b2.add(b31);
tree=new JTree(top);
int v=ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED;
int h=ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED;
JScrollPane jsp=new JScrollPane(tree,v,h);
contentPane.add(jsp,BorderLayout.CENTER);
jtf=new JTextField("",20);
contentPane.add(jtf,BorderLayout.SOUTH);
//下面加入鼠标事件
tree.addMouseListener(new MouseAdapter()
{
public void mouseClicked(MouseEvent me)
{
doMouseClicked(me);
}
});
}
//鼠标动作
void doMouseClicked(MouseEvent me)
{
TreePath tp=tree.getPathForLocation(me.getX(),me.getY());
if(tp!=null)
jtf.setText(tp.toString());
else
jtf.setText("");
}
}
Robi
2002-11-29
打赏
举报
回复
谁调用监听器
junnef
2002-11-29
打赏
举报
回复
加监听器,监听不同的时间,在java.awt.event和javax.swing.event包中。
2014年
Java
最全面试题以及答案.
在
Java
中
,核心类是
java
.lang.Class,它代表正在运行的
Java
应用程序
中
的类和接口。 20. 得到Class的三个过程是什么? 通过类的名称获取、通过对象实例获取、通过Class类的静态方法获取。 21. 如何唤起类
中
的一个...
scalable-io-in-
java
-
中
文1
在
Java
中
,尤其在处理高并发的网络连接时,传统的阻塞IO模型(如基于`
java
.io`的`ServerSocket`)可能会成为性能瓶颈,因为它会为每个连接创建一个新的线程,这会消耗大量系统资源并可能导致线程池溢出。 **事件...
java
面试题 总结
声明方法的存在而不去实现它的类被叫做抽象类(abstract class),它用于要创建一个体现某些基本行为的类,并为该类声明方法,但不能在该类
中
实现该类的情况。不能创建abstract 类的实例。然而可以创建一个变量,其...
java
线程知识书籍
- **提高用户界面响应速度**:在事件驱动的用户界面(如
AWT
和Swing)
中
,有一个专门的事件线程
负责
处理用户交互事件。如果长时间运行的任务被安排在这个线程
中
执行,可能会导致界面无响应。因此,将耗时任务放在单独...
java
弹球程序弹球程序
- `EventQueue.invokeLater(Runnable)`:此方法确保程序
中
的GUI构建代码在事件
分派
线程上运行,以避免任何潜在的线程安全问题。 - `JFrame frame = new BallFrame();`:创建一个`BallFrame`实例,并将其设置为应用...
Java SE
62,635
社区成员
307,269
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章