小弟在这请教坛子里的大神。我对java的事件处理模型有了一点了解,现在就想知道java事件触发的原理。
比如,我在一个swing组件上点下鼠标后,java怎么接收到我点鼠标的事件(比如是操作系统通知JVM?)。
希望知道得详细一点。
真心期盼各位大神指点。
比如,我在一个swing组件上点下鼠标后,java怎么接收到我点鼠标的事件(比如是操作系统通知JVM?)。
希望知道得详细一点。
真心期盼各位大神指点。
调试欢乐多
1、鼠标点击后,其作为外设会触发IRQ中断;
2、计算机设备会根据IRQ中断来调用操作系统预先注册好的处理代码;楼主学习过《操作系统原理》不?这里面有中半部分所需知识,大致是:
3、操作系统根据鼠标的位置和屏幕上各窗体应用的层叠关系,判定鼠标所在位置是哪个窗体关系范畴;
4、生成事件通知该窗体;最后是JavaGUI系统的知识,这个一般学校不教,大致是:
5、GUI主线程得到该事件后,会将其封装为JavaGUI事件;
6、然后进一步根据位置来判定究竟是哪个控件应该处理该事件,并将事件发送给该控件。
不要原理,原理我都知道哈。时间肯定是要和操作系统交互的。我觉问点具体的,操作系统与JVM的交互过程,最好不仅仅是原理。希望知道具体实现过程