Java:在不同界面样式下JPopupMenu与鼠标事件mousePressed表现的结果不同!
2015-06-17 13:12
513 查看
今天遇到一个郁闷的事儿:
在一个JFrame上放了一个JList元件,这个JList元件添加了鼠标事件:
mouseReleased、mousePressed ...
其中,在mouseReleased中,主要显示一个弹出式菜单。在mousePressed 中输入用户按下的是左键还是右键。
但我发现一个奇怪的事情,
当我把当前界面设置为:
UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel");
当弹出式菜单显示出来,再接下右键,这个时候无法触发mousePressed事件。
改为其它几个样式也不行,只有设置为默认的:
UIManager.setLookAndFeel("javax.swing.plaf.basic.BasicLookAndFeel");
只有这样,在弹出式菜单显示出来时,再按下右键,也能触发mousePressed事件。
这难道是BUG吗?这都什么年代了,不会还出现这么低级的Bug吧?
回想起当年使用jdk1.3的时候,JTextArea老是无法设置文本同时为粗斜体,当时老是找不到问题出在哪,后来才知道原来是个Bug,晕死了。
这次,不知是什么原因引起的。
2009-10-23
在一个JFrame上放了一个JList元件,这个JList元件添加了鼠标事件:
mouseReleased、mousePressed ...
其中,在mouseReleased中,主要显示一个弹出式菜单。在mousePressed 中输入用户按下的是左键还是右键。
但我发现一个奇怪的事情,
当我把当前界面设置为:
UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel");
当弹出式菜单显示出来,再接下右键,这个时候无法触发mousePressed事件。
改为其它几个样式也不行,只有设置为默认的:
UIManager.setLookAndFeel("javax.swing.plaf.basic.BasicLookAndFeel");
只有这样,在弹出式菜单显示出来时,再按下右键,也能触发mousePressed事件。
这难道是BUG吗?这都什么年代了,不会还出现这么低级的Bug吧?
回想起当年使用jdk1.3的时候,JTextArea老是无法设置文本同时为粗斜体,当时老是找不到问题出在哪,后来才知道原来是个Bug,晕死了。
这次,不知是什么原因引起的。
2009-10-23
相关文章推荐
- css块级标签、行内标签、行内块级标签
- css选择器的优先级别
- Java:判断当前操作系统界面采用的主题是windows经典样式还是xp样式
- CSS 文字上下颠倒显示
- 响应式设计的5个CSS实用技巧
- z-index在css中怎么用?
- WPF DataGrid 控件(自定义样式篇)
- css文件和js文件后面带一个问号
- 7个你可能不认识的CSS单位
- css选择器详解
- css3笔记--transition相关属性
- DIV+CSS定位position
- 利用CSS3打造一组质感细腻丝滑的按钮
- css3 hover效果集
- CSS---Block和inline元素对比
- css3按钮特效
- css3图片鼠标移过效果
- php js css加载合并函数 宋正河整理
- HTML CSS3 手风琴菜单
- CSS border实现三角形