比如我在用Delphi编写的应用程序的界面上单击鼠标,或按下某键,将会触发某事件,Windows将会发送一个消息给这个Delphi应用程序。
我想问的是,消息事件机制只是Windows有的吗?我用Java编写一个应用程序,我单击鼠标或按下某键,也会触发某个事情,那Java的消息事件又是怎么回事呢?Java的消息事件机制应该不会依赖Windows吧?那消息机制与操作系统,与某一计算机语言有什么联系呢?
我想问的是,消息事件机制只是Windows有的吗?我用Java编写一个应用程序,我单击鼠标或按下某键,也会触发某个事情,那Java的消息事件又是怎么回事呢?Java的消息事件机制应该不会依赖Windows吧?那消息机制与操作系统,与某一计算机语言有什么联系呢?
解决方案 »
- 哪位可以给我讲一下以后工作数据库方面工资高还是javaweb?我现在想选择一个方向,谢谢 大家了!
- 很久没发帖,发个帖玩下,看下这是Java的多重继承么
- 遍历UNIX上文件目录的问题
- 调试报ClassCastException【菜鸟上路】
- 数据库就是死活连接不上...郁闷呀!!!!!!在线等呀.
- 今天要交的作业
- BorderLayout布局管理器的问题:如何在这里自主改变大小
- 想问一下java写文件的细节问题,写1M数据量的int,生成的文件是多大?
- 同时调用不同包同名类同名方法,怎么实现?
- 关于构件激发AWT事件
- JAVA操作ZIP文件...急急急急急急急急急急急急
- 请教java密钥变换的问题
说说我的理解,即事件循环机制和os没有必然的关联,例如linux下的C编程本身没有时间循环机制,但是minigui却能模拟出类似windows下的时间循环机制出来。依此类推,java的这套事件捕捉机制估计是jvm模拟出来的
系统将事件发送给JVM的EventQueue,然后JVM使用EventDispatchThread,进行消息处理。
JAVA内部产生的消息也使用EventQueue进行处理。
AWT的事件(MouseEvent等)处理是系统直接发送给各个控件的。
SWING的事件是发送给界面的Panel的,然后进行事件分解。
连接这些原理可以做自动测试了