求解:我运行一个swing窗口程序,但窗口一打开就要让它失去焦点,并且标题栏变成"灰色"的,灰色是指此窗口没有任何焦点存在,就是用鼠标点击了其它外部其它窗口一样。能不能给个思路,目前要做一个类似windows的osk 虚拟键盘的东西,现在要用java开发,希望大家多给点意见 100分相送
解决方案 »
- 窗口隐藏后,组件上所绘的内容消失,怎么让它恢复?
- 问一个File问题。
- 这里有懂JAVA的C++程序员嘛?帮我解决个关于算法问题。
- 请教一下,resin3.0.8启动时出现一个红字提示,是怎么回事
- 怎么样获得odbc数据源的路径!!!在线!!!
- ▲▲▲实在是无聊,郁闷。就把C++和Java比一下速度。算10000!(10000的阶乘)▲▲▲
- 如果将byte[]中的内容原封不动的转到string?
- 一个可能是有关CLASSPATH的问题,请各位帮忙(在线等待)
- 为什么一个bean实例花自己写的另外bean时,编译提示无法识别这个bean?
- 如何在jbuilder 5中添加一个jdbc驱动,详细过程?
- Hql问题``急``求解`
- 怎样判断数组元素是否为数字,望大家帮忙,谢谢!
楼主【kkcheng】截止到2008-07-03 10:12:40的历史汇总数据(不包括此帖):
发帖的总数量:10 发帖的总分数:770
结贴的总数量:5 结贴的总分数:620
无满意结贴数:0 无满意结贴分:0
未结的帖子数:5 未结的总分数:150
结贴的百分比:50.00 % 结分的百分比:80.52 %
无满意结贴率:0.00 % 无满意结分率:0.00 %
楼主加油
import java.awt.event.WindowEvent;import javax.swing.JFrame;public class MyTest extends JFrame { public MyTest() {
this.setVisible(false);
this.setFocusableWindowState(false);
this.setVisible(true);
this.addWindowListener(new WindowAdapter() {
public void windowOpened(WindowEvent e) {
setFocusableWindowState(true);
}
});
} /**
* @param args
*/
public static void main(String[] args) {
MyTest frame = new MyTest();
frame.setSize(300, 300);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}}
import javax.swing.JFrame;public class MyTest extends JFrame { public MyTest() {
this.getContentPane().setLayout(new FlowLayout());
this.getContentPane().add(new JButton());
this.setVisible(false);
this.setFocusableWindowState(false);
this.setVisible(true);
} /**
* @param args
*/
public static void main(String[] args) {
MyTest frame = new MyTest();
frame.setSize(300, 300);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}}
它就不能实现这效果了,一运行就会得到焦点,去除setAlwayOnTop确没有了这种效果,怪事?
import javax.swing.JFrame;public class MyTest extends JFrame { public MyTest() {
this.getContentPane().setLayout(new FlowLayout());
this.getContentPane().add(new JButton());
this.setVisible(false);
this.setFocusableWindowState(false);
this.setVisible(true);
this.setAlwaysOnTop(true);
} /**
* @param args
*/
public static void main(String[] args) {
MyTest frame = new MyTest();
frame.setSize(300, 300);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}}