大家来讨论!关于application、Swing编程的一些很令人头疼的问题! 7、还有titlebar的字体怎么控制? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 5、同样是最大化问题,没找到java窗口最大化的函数实现最大化我用 Toolkit.getDefaultToolkit().getScreenSize()来实现,但每次都会被任务栏覆盖 一部分窗口,郁闷! 这个问题我们是使用java.awt.Robot机器人来实现的! 基本思想是借用机器人实例移动鼠标和点击鼠标——移动到最大化按钮上并点击它。在此之前我们应该使窗口实现表面上的最大,也就是你说的覆盖了任务栏的那种,这样看起来就象真的一样! 要注意的是鼠标移动到的最大化按钮的坐标,这个坐标我们是取得X的值减去了一个常数,这个要自己去试,我们一般是减去15个象素;Y轴坐标取10左右吧,你自己也要多试才行! 这个方法的弊端就是可能在不同的分辨率下,最大化按钮的位置不好确定;而且,如果在代码运行过程中,人为的故意频繁移动鼠标,那么机器人的鼠标移动就会被覆盖,结果是不能自动移动到最大化按钮上,点击也没有用!代码如下! :Robot rb=new Robot(); int x=this.getWidth( )-40; int y=10; rb.mouseMove(x,y); //System.out.println("机器人移动鼠标!"); rb.mousePress (InputEvent.BUTTON1_MASK ); //System.out.println("机器人点鼠标!"); rb.mouseRelease (InputEvent.BUTTON1_MASK); //System.out.println("机器人放开鼠标!"); //rb.keyPress (KeyEvent.VK_X ); rb.mouseMove(this.getWidth()/2 ,this.getHeight()/2 ); 1、这个问题实在是很难以解决,至少界面上的控件极其相关n多的监听阿什么的处理是无法分成几个小java文件的。2、你这个是什么意思?去掉热咖啡图标还是改变它的top格式?3、关于jtable的列表形式,你可以到这里看看,里面有n多的table样板源代码http://www2.gol.com/users/tame/swing/examples/SwingExamples.html 谢谢!phoenix_zd(天马行空) : 你这个主意不错! 不过,我是在想是不是可以直接发送个类似窗口最大化鼠标事件给窗口,java既然可以通过单击最大化按钮最大化,那么它应该可以读出屏幕操作区域的尺寸,还有可能根本就不需我们去读屏幕操作区域,!就像windows中的消息机制一样!alphazhao(绿色咖啡) : 2、让他永远显示在最前面,就是失去焦点的时候也不会被其他窗口覆盖了,就像 在jb6中按f1弹出的帮助那样。或者win2k的任务管理器! 其实我更希望找到 jb6中的那种方式,可以被其他程序窗口覆盖,但在本程序窗口中永远显示在最 前面! 1,写JPanel类。实现preload。2,回家给你。 2.要调用win32API吧,写一个native方法。6.在javax.swing.plaf.basic.BasicLookAndFeel.java中,自己找找! 4.5. 你可以使用JInternalFrame的 setMaximum(boolean b) . setIcon(boolean b)。--------------------------------------------CSDN论坛助手很棒,希望以后更好,我坚决拥护! JackyXiao(杰克) :你试过吗?我怎么觉得不行? 问题1.可以考虑用函数重载,在JBUILDER的sample/ipworks/ftp中有个不错的例子.问题2.去http://www.l2fprod.com/当一个skinlf.jar,加入classpath,程序里这样写import com.l2fprod.gui.nativeskin.NativeSkin;...//把frame始终置前NativeSkin.getInstance().setAlwaysOnTop(frame, true); 1。采用非匿名类,我看到某个程序的源代码的事件监听器分成几个java文件,每个java文件采用主文件+$+名字的方法,感觉比较好读,而且主文件也挺干净的。 crm2000(浏览器) 原理是这样, 但这样的话,就不好在事件响应函数中访问主框架的成员了! 你有森么好的方法嘛? setMaximum(boolean b) setIcon(boolean b)我在我的一个小工程中就是这样用的。肯定可以的,你不妨贴出你的代码片段,大家研究!--------------------------------------------CSDN论坛助手很棒,希望以后更好,我坚决拥护! 5.想实现最大化,在jdk1.4下,用JFrame.setExtendedState(JFrame.MAXIMIZED_BOTH); 5.//前提:jdk1.4JFrame frame=new JFrame();frame.show();frame.setExtendedState(Frame.MAXIMIZED_BOTH); 回复人: JackyXiao(杰克) 你可能误会我的意思了,的确是最大化了,但子窗口还是有titlebar我希望把子窗口的titlebar去掉! 唉!我的是jdk1.3用java作application的到底多不多? 回复人: westdo() ( ) 信誉:100 2002-07-04 15:27:00 得分:0 ...问题2.去http://www.l2fprod.com/当一个skinlf.jar,加入classpath,程序里这样写import com.l2fprod.gui.nativeskin.NativeSkin;...//把frame始终置前NativeSkin.getInstance().setAlwaysOnTop(frame, true);哈哈,似乎是我写的嘛,那功能目前只能在win32上用最大化internalframe时把按钮嵌入父窗体的menubar的例子我见过,等研究一下看结果。 Apocalypse(逍遥思辨) : 太感激了!:-) 那破程序居然还经过混淆器,看得人头晕,不过基本搞明白了。原来在最大化时是把internalframe的contentpane抠出来,把desktoppane换成jscrollpane,把抠来的contentpane放进viewport。(titlebar当然没了)把internalframe的title叠加到父窗体title的后面。再做3个按钮,-口x,包装到一个box里,放进父窗体的jmenubar,监听其事件,还原时做上面步骤的逆操作。(牵涉到不同界面样式下的绘制,还没看得太明白) 也可以找个JClass 5.0k,记得里面有个JCMDIPane已经实现了这功能,不过往父窗体里面加window菜单的逻辑不好,只能加到最后一个(经常出现在help后面的情况),可以找一个来套用或者参考。 JDK升级到1。4,对窗体最大化是很EASY的。 Apocalypse(逍遥思辨) :这么繁!你现在能不能把它写出来了? 2、你的问题的需求可不可以改动成如下:当你的程序获得焦点的时候,这个界面A显示在所有的界面之外(第一个显示),除了界面A可以被点击外,其它的界面均不可点击。就像Jbuilder里面按下F1弹出的界面一样!如果是这样就简单多了,只不过是将界面A和调用它的父界面owner锁定罢了。不过界面A一定要是Dialog类型的,不知道jdk1.4里面Frame类型的能否锁定。看看Dialog或者JDialog的构造函数,你会发现有几个这种类型参数的:(Frame owner,boolean modle,……)其中owner就是调用界面A的界面,它可以是Frame、JFrame、Dialog和JDialog中的一种,modle为true的时候,即是锁定界面A和它的调用界面(owner界面)。 alphazhao(绿色咖啡) :谢谢你给我的那个网址,那个地方很好!2、这种不行!这就是典型的模态对话框了!打开模态对话框后就不能再在父窗口中操作!jb6弹出的帮助是可以操纵其父窗口的! 求助关于在java中播放声音的问题 请教一个问题。 TOMCAT 和 Active Directory 连用来做 user authentication (有请 Kerberos, SPNEGO 高手来帮忙 ) 想實現一個JAVA小程序的源代碼 想破头皮都没搞顶,请大家帮帮忙,在线等 求助,GUI中Applet中文显示问题!急 java有删除非空目录的API吗? 大家能谈谈对内隐类(inner class)的理解吗?我对这个很糊涂! 新手的问题,希望有人告诉我 是在找不到问题所在啊~~~~~~~~~~~~~~!各位学长帮帮忙啊!谢谢啦 求问诸位大虾及英语高手 如何判断字符串是否相等?
Toolkit.getDefaultToolkit().getScreenSize()来实现,但每次都会被任务栏覆盖
一部分窗口,郁闷! 这个问题我们是使用java.awt.Robot机器人来实现的! 基本思想是借用机器人实例移动鼠标和点击鼠标——移动到最大化按钮上并点击它。在此之前我们应该使窗口实现表面上的最大,也就是你说的覆盖了任务栏的那种,这样看起来就象真的一样!
要注意的是鼠标移动到的最大化按钮的坐标,这个坐标我们是取得X的值减去了一个常数,这个要自己去试,我们一般是减去15个象素;Y轴坐标取10左右吧,你自己也要多试才行!
Robot rb=new Robot();
int x=this.getWidth( )-40;
int y=10;
rb.mouseMove(x,y);
//System.out.println("机器人移动鼠标!");
rb.mousePress (InputEvent.BUTTON1_MASK );
//System.out.println("机器人点鼠标!");
rb.mouseRelease (InputEvent.BUTTON1_MASK);
//System.out.println("机器人放开鼠标!");
//rb.keyPress (KeyEvent.VK_X );
rb.mouseMove(this.getWidth()/2 ,this.getHeight()/2 );
2、你这个是什么意思?去掉热咖啡图标还是改变它的top格式?
3、关于jtable的列表形式,你可以到这里看看,里面有n多的table样板源代码
http://www2.gol.com/users/tame/swing/examples/SwingExamples.html
你这个主意不错!
不过,我是在想是不是可以直接发送个类似窗口最大化鼠标事件给窗口,java既然可以通过单击最大化按钮最大化,那么它应该可以读出屏幕操作区域的尺寸,还有可能根本就不需我们去读屏幕操作区域,!
就像windows中的消息机制一样!alphazhao(绿色咖啡) :
2、让他永远显示在最前面,就是失去焦点的时候也不会被其他窗口覆盖了,就像
在jb6中按f1弹出的帮助那样。或者win2k的任务管理器! 其实我更希望找到
jb6中的那种方式,可以被其他程序窗口覆盖,但在本程序窗口中永远显示在最
前面!
2,回家给你。
6.在javax.swing.plaf.basic.BasicLookAndFeel.java中,自己找找!
你可以使用JInternalFrame的
setMaximum(boolean b) .
setIcon(boolean b)。--------------------------------------------
CSDN论坛助手很棒,希望以后更好,我坚决拥护!
你试过吗?我怎么觉得不行?
问题2.去http://www.l2fprod.com/当一个skinlf.jar,加入classpath,程序里这样写
import com.l2fprod.gui.nativeskin.NativeSkin;
...
//把frame始终置前
NativeSkin.getInstance().setAlwaysOnTop(frame, true);
原理是这样,
但这样的话,就不好在事件响应函数中访问主框架的成员了!
你有森么好的方法嘛?
setIcon(boolean b)
我在我的一个小工程中就是这样用的。肯定可以的,你不妨贴出你的代码片段,大家研究!
--------------------------------------------
CSDN论坛助手很棒,希望以后更好,我坚决拥护!
JFrame.setExtendedState(JFrame.MAXIMIZED_BOTH);
//前提:jdk1.4
JFrame frame=new JFrame();
frame.show();
frame.setExtendedState(Frame.MAXIMIZED_BOTH);
你可能误会我的意思了,的确是最大化了,但子窗口还是有titlebar我希望把子窗口的titlebar去掉!
用java作application的到底多不多?
...
问题2.去http://www.l2fprod.com/当一个skinlf.jar,加入classpath,程序里这样写
import com.l2fprod.gui.nativeskin.NativeSkin;
...
//把frame始终置前
NativeSkin.getInstance().setAlwaysOnTop(frame, true);哈哈,似乎是我写的嘛,那功能目前只能在win32上用最大化internalframe时把按钮嵌入父窗体的menubar的例子我见过,等研究一下看结果。
太感激了!:-)
原来在最大化时是把internalframe的contentpane抠出来,把desktoppane换成jscrollpane,把抠来的contentpane放进viewport。(titlebar当然没了)把internalframe的title叠加到父窗体title的后面。
再做3个按钮,-口x,包装到一个box里,放进父窗体的jmenubar,监听其事件,还原时做上面步骤的逆操作。(牵涉到不同界面样式下的绘制,还没看得太明白)
这么繁!你现在能不能把它写出来了?
如果是这样就简单多了,只不过是将界面A和调用它的父界面owner锁定罢了。不过界面A一定要是Dialog类型的,不知道jdk1.4里面Frame类型的能否锁定。看看Dialog或者JDialog的构造函数,你会发现有几个这种类型参数的:
(Frame owner,boolean modle,……)
其中owner就是调用界面A的界面,它可以是Frame、JFrame、Dialog和JDialog中的一种,modle为true的时候,即是锁定界面A和它的调用界面(owner界面)。
谢谢你给我的那个网址,那个地方很好!2、这种不行!
这就是典型的模态对话框了!
打开模态对话框后就不能再在父窗口中操作!jb6弹出的帮助是可以操纵其父窗口的!