java创建窗口 运行后鼠标随便点窗体或者随便移动,按钮就消失网页看不见关闭按钮了

我创建了窗口A,程序中可能创建窗口B,如何关闭A(点右上角叉号)时检测B是否被打开?若被打开则一起关闭-Java/JavaSE-java-电脑编程网我创建了窗口A,程序中可能创建窗口B,如何关闭A(点右上角叉号)时检测B是否被打开?若被打开则一起关闭-Java/JavaSE作者:qykshr 和相关&&如题------回答---------------其他回答(15分)---------Java code
addWindowListener(new WindowAdapter()
{
public void windowClosed(WindowEvent e)
MyDialog.this.dispose();
}
});
------其他回答(5分)---------在负责A的代码中,为B添加状态监听或者设置状态。当要关闭A的时候,检查这些状态,然后重置状态。不知道你能不能理解。相关资料:|||||||我创建了窗口A,程序中可能创建窗口B,如何关闭A(点右上角叉号)时检测B是否被打开?若被打开则一起关闭-Java/JavaSE来源网络,如有侵权请告知,即处理!编程Tags:                &                    java题求帮忙,要点击画直线按钮自己就可以用鼠标画直线,点击画矩形就可以用鼠标画矩形,求帮忙_百度知道
java题求帮忙,要点击画直线按钮自己就可以用鼠标画直线,点击画矩形就可以用鼠标画矩形,求帮忙
com/zhidao/pic/item/314e251f95cad1c8bf2e9c83d51ef.hiphotos://a.com/zhidao/wh%3D600%2C800/sign=ef9ec471d6f/314e251f95cad1c8bf2e9c83d51ef.jpg" esrc="http.baidu.hiphotos.hiphotos://a.jpg" target="_blank" title="点击查看大图" class="ikqb_img_alink"><img class="ikqb_img" src="http.baidu://a;<a href="http&/zhidao/wh%3D450%2C600/sign=f36c29c640a3bfb1f95cad1c8bf2e9c83d51ef
提问者采纳
*.abs(x2 - x1);
g: MouseL
add(&#47, jrb3; }
/ import java:
&#47.isSelected())
jrb = 3;使用JPanel面板绘图class Co13 extends JFrame{ JPanel jp.sqrt(dx * dx + dy * dy)).addMouseListener(this););
g;以起始点为圆心;/ JRadioButton jrb1, y2);/
add(new MyPanel(this)).paintComponent(g); Co13() {
jrb1 = new JRadioButton(&
int r = (int)(Math.add(jrb3););&#47, y1, y1;
重绘图形 } public void mouseMoved(MouseEvent e) { }}public class E6_13{ public static void main(String args[])
{ new Co13(); }
public void mouseReleased(MouseEvent e) { }
public void mouseEntered(MouseEvent e) {
public void mouseExited(MouseEvent e) {
public void mouseClicked(MouseEvent e)
public void mouseDragged(MouseEvent e) {
x2 = /椭圆绘制&quot, jrb4, y1, r + r, 10;/
setBounds(120;
break,true).getX(),BorderL
if(jrb1; //
setVisible(true).getY();
else if(jrb2;&#47, jrb2, r + r);
jrb3 = new JRadioButton(&获取鼠标按下时的坐标
&#47.add(jrb4);
setTitle(&
case 4;矩形&quot.blue).drawOval(x1;/
&#47.isSelected())
jrb = 1;/ /
/鼠标画图1
);直线绘制&quot.drawLine(x1;画圆
int dx = M事件接口.jf = jf:圆&/以起始点为原点;
g;直线&quot.awt,125, y1 - r, 10);使用鼠标画图/加入按钮组
使用鼠标绘图&quot, x2;矩形绘制&quot.getX(). }
public void mousePressed(MouseEvent e)
x1 = e.gray);//鼠标事件处理/起始点和终点;
/;&#47.isSelected())
jrb = 2;调用超类JPanel构造方法
String s =
jp, y2;.add(jrb4);画直线
g,两点固定一条直线
s = & }}class MyPanel extends JPanel implements MouseL
&#47.setColor(Color.add(jrb3).drawRect(x1;
ButtonGroup bg = new ButtonGroup(),300;
g.*;,用于传递窗体中选择的按钮 MyPanel(Co13 jf) {
this, y1;正圆绘制&quot,移动距离为半径
int dy = Math, y2 - y1);
else if(jrb3;
s = &quot.addMouseMotionListener(this).add(jrb1);/
jp = new JPanel(), x2.drawLine(x1;
} public int getJrb()
jrb = 4.add(jrb1):
g;判断判断并返回选择的是哪个单选按钮 {
.setColor(Color.drawOval(x1 - r.
jrb2 = new JRadioButton(&&#47, y2);画矩形
jrb4 = new JRadioButton(&quot, MouseMotionListener&#47,移动距离为长宽
s = &quot.*.abs(y2 - y1),200).red).setColor(C
setDefaultCloseOperation(JFrame:
case 2;&#47, MouseMotionListener{ /
this, x2 - x1;
case 3;///;
&#47.NORTH);/窗体对象, x2 - x1类似的;获取鼠标拖动时的坐标
y2 =/按钮组
bg.drawString(s.add(jrb2);&#47, y2 - y1);判断选择什么图形
case 1;&#47.getJrb())
/覆盖 paintComponent 方法 public void paintComponent(Graphics g) {
super.add(jrb2);将JPanel面板作为画布 int x1.EXIT_ON_CLOSE);
).swing,自己改改就好了;
repaint().getY()
提问者评价
太给力了,你的回答完美地解决了我的问题,非常感谢!
其他类似问题
为您推荐:
鼠标的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁Java 编程中错误处理的最佳实践_JAVA :一个链接已经打开一个窗体 再点击该链接 怎么只打开第一次点击链接打开的那个窗体_net中调用dts,如何添加dtspkg.dll这个组件__脚本百事通
稍等,加载中……
^_^请注意,有可能下面的2篇文章才是您想要的内容:
Java 编程中错误处理的最佳实践
JAVA :一个链接已经打开一个窗体 再点击该链接 怎么只打开第一次点击链接打开的那个窗体
net中调用dts,如何添加dtspkg.dll这个组件
Java 编程中错误处理的最佳实践
Java 编程中异常处理的最佳实践
这里是我收集的10个Java编程中进行异常处理的10最佳实践。在Java编程中对于检查异常有褒有贬,强制处理异常是一门语言的功能。在本文中,我们将尽量减少使用检查型异常,同时学会在Java编程中使用检查型VS非检查型异常。
1)为可恢复的错误使用检查型异常,为编程错误使用非检查型错误。
选择检查型还是非检查型异常,对于Java编程人员来说,总是让人感到困惑。检查型异常保证你对错误条件提供异常处理代码,这是一种从语言到强制你编写健壮的代码的一种方式,但同时会引入大量杂乱的代码并导致其不可读。当然,如果你有替代品和恢复策略的话,捕捉异常并做些什么看起来似乎也在理。在Java编程中选择检查型异常还是运行时异常,更多信息参考 checked
vs unchecked exceptions。
2)在finally程序块中关闭或者释放资源
这在Java编程中,是一个广为人知的最佳实践,在处理网络和IO类的时候,相当于一个标准。在finally块中关闭资源, 在正常和异常执行的情况下,保证之前和稀缺资源的合理释放,这由y finally块保证。从Java7开始,该语言有了一项更有趣的功能:资源管理自动化或者ARM块能实现这一功能。尽管如此,我们仍然要记住在finally块中关闭资源,这是对于释放像FileDescriptors这类,应用在socket和文件编程的情况下的有限资源很重要的。
3)在堆栈跟踪中包含引起异常的原因
很多时候,当一个由另一个异常导致的异常被抛出的时候,Java库和开放源代码会将一种异常包装成另一种异常。日志记录和打印根异常就变得非常重要。Java异常类提供了 getCause()方法来检索导致异常的原因,这些(原因)可以对异常的根层次的原因提供更多的信息。该Java实践对在进行调试或排除故障大有帮助。时刻记住,如果你将一个异常包装成另一种异常时,构造一个新异常要传递源异常。
4)始终提供关于异常的有意义的完整的信息
异常信息是最重要的地方,因为这是程序员首先看到的第一个地方,这里你能找到问题产生的根本原因。这里始终提供精确的真实的信息。例如,对比IllegalArgumentException 异常的两条异常信息:
消息 1: "Incorrect argument for method"
消息 2: "Illegal value for ${argument}: ${value}
第一条消息仅说明了参数是非法的或者不正确,但第二条消息包括了参数名和非法值,而这对于找到错误的原因是很重要的。在用Java编程中编写异常处理代码的时候,始终遵循该Java最佳实践。
5)避免过度使用检查型异常
检查型异常在强制执行方面有一定的优势,但同时它也破坏了代码,通过掩盖业务逻辑使代码可读性降低。只要你不过度使用检查型异常,你可以最大限度的减少这类情况,这样做的结果是你会得到更清洁的代码。你同样可以使用Java7的新功能,像one
catch block for multiple exceptions 和 automatic resource management以移除重复项。
6)将检查型异常转为运行时异常
这是在像Spring之类的多数框架中用来限制使用检查型异常的技术之一,大部分出自于JDBC的检查型异常,都被包装进DataAccessException中,而(DataAccessException)异常是一种非检查型异常。这是Java最佳实践带来的好处,特定的异常限制到特定的模块,像 SQLException 放到DAO层,将意思明确的运行时异常抛到客户层。
7)记住对性能而言,异常代价高昂
需要记住的一件事是异常代价高昂,同时让你的代码运行缓慢。假如你有方法从ResultSet(结果集)中进行读取,这时常会抛出SQLException异常而不会移到下一元素,这将会比不抛出异常的正常代码执行的慢的多。因此最大限度的减少不必要的异常捕捉和移动,那里没有什么固定的原因。不要仅仅是抛出和捕捉异常,如果你能使用boolean变量去表示执行结果,可能会得到更整洁,更高性能的解决方案。修正错误的根源,避免不必须要的异常捕捉。
8)避免catch块为空
没有什么比空的catch块更糟糕的了,因为它不仅隐藏了错误和异常,同时可能导致你的对象处于不可使用或者脏的状态。空的catch块只能变得无意义,如果你非常肯定异常不会继续以任何方式影响对象状态,但在程序执行期间,用日志记录错误依然是最好的(方法)。对于在Java编程中编写异常处理代码,这不仅仅是一个Java最佳实践,而是一个最通用的实践。
9)使用标准异常
我们的第九条最佳实践建议使用标准和内置的Java异常。使用标准异常而不是每次创建我们自己的异常,对于维护性和一致性,不管是现在还是以后,都是最好的选择。重用标准异常使代码更具可读性,因为大部分Java开发人员对标准的像源自于JDK的RuntimeException 异常,IllegalStateException 异常,IllegalArgumentException 异常或者 NullPointerException异常,(开发者)他们能一眼就知道每种异常的目的,而不是在代码里查找或者在文档里查找用户定义的异常的目的。
10)记录任何方法抛出的异常
Java提供了throw和throws关键字来抛出异常,在javadoc中用@throw记录任何方法可能会抛出的异常。如果你编写API或者公共接口,这就变得非常重要。任何方法抛出的异常都有相应的文档记录,这样你就能下意识的提醒任何使用(该方法)的人。
这些就是所有在Java编程中在处理异常的时候需要遵循的最佳实践。让我们知道了什么是在Java编程中编写异常处理代码时需要遵循的实践。
转自:http://www.oschina.net/translate/10-exception-handling-best-practices-in-java-programming?from=
JAVA :一个链接已经打开一个窗体 再点击该链接 怎么只打开第一次点击链接打开的那个窗体
JAVA :一个链接已经打开一个窗体 再点击该链接 如何只打开第一次点击链接打开的那个窗体一个链接已经打开一个窗体 再点击该链接 如何只“打开”第一次点击链接打开的那个窗体,而不是又新打开另外一个新窗口------解决方案--------------------把那个弹出的窗体改为模态窗体就可以了
------解决方案--------------------用window.open(),到网上查下里面的参数, 可以解决你的问题。
------解决方案--------------------保存打开窗口的引用,下次再点击时调到窗口前面就可以了。
------解决方案--------------------
刚好用了一个,给你说一下吧,SCRIPT LANGUAGE="javascript"&&!--window.open ('page.html', 'newwindow', 'height=100, width=400, top=0,left=0, toolbar=no, menubar=no, scrollbars=no, resizable=no,location=no, status=no')//写成一行,只要第二个参数'newwindow'是同一个,打开的永远都是一个窗口。--&&/SCRIPT&参数解释:&SCRIPT LANGUAGE="javascript"& js脚本开始;window.open 弹出新窗口的命令;'page.html' 弹出窗口的文件名;'newwindow' 弹出窗口的名字(不是文件名),非必须,可用空''代替;height=100 窗口高度;width=400 窗口宽度;top=0 窗口距离屏幕上方的象素值;left=0 窗口距离屏幕左侧的象素值;toolbar=no 是否显示工具栏,yes为显示;menubar,scrollbars 表示菜单栏和滚动栏。resizable=no 是否允许改变窗口大小,yes为允许;location=no 是否显示地址栏,yes为允许;status=no 是否显示状态栏内的信息(通常是文件已经打开),yes为允许
net中调用dts,如何添加dtspkg.dll这个组件
net中调用dts,怎么添加dtspkg.dll这个组件本地一txt文件,内有巨量数据,要导入远程服务器的表中,用net
2005c#实现。
经过参考资料,决定用dts实现,但是c#需要导入外部包。安装提示
dtspkg.dll不成功。
该dll文件路径在
C:\Program
Files\Microsoft
Server\80\Tools\Binn\dtspkg.dll
参考资料有/5785322.html
http://community.csdn.net/Expert
7.xml?temp=.3765833
/tech/kaifa/vcnet/database/4158.html
就是没有解决问题 ------解决方案--------------------dtspkg.dll拷贝到bin里面,然后需要的时候用using导入命名空间
------解决方案--------------------这个路径是不是提示远程的路径没有这个东东
------解决方案--------------------如果你只是想备份、还原SQL Server数据,不需要使用什么特别的外加的玩意,使用普通的SQL Server访问命令就行了。
/search?q=sql%20server%20backup%E8%AF%AD%E5%8F%A5%20restore%E8%AF%AD%E5%8F%A5&hl=zh-CN&newwindow=1&rls=com.microsoft%3Aen-US&lr=lang_zh-CN%7Clang_zh-TW&nxpt=20.
------解决方案--------------------注意,当你使用ADO.NET备份或者还原一个数据库的时候,你应该在SqlConnection的连接串中声明打开master数据库,而不是你要备份或者还原的目标数据库(其实这很明显)。
如果您喜欢IT行业或者对IT行业感兴趣,想开拓技术视野,欢迎加入本站官方QQ群:,在群里认识新朋友和交流技术^_^
本站联系邮箱:

我要回帖

更多关于 网页看不见关闭按钮 的文章

 

随机推荐