ITPub博客

首页 > 应用开发 > IT综合 > 一个问题,一个答案。applet上实现一个模式对话框

一个问题,一个答案。applet上实现一个模式对话框

原创 IT综合 作者:nightlamb 时间:2007-02-11 13:47:57 0 删除 编辑

有时候不方便调试时,我们习惯用弹出对话框来显示语句是否正常运行到某处(这是做网页都知道的)。在javaapplet中实现这个一条语句就够了。
答案:
javax.swing.JOptionPane.showMessageDialog(applet,“text”);

问题:
据说还有一种方法,我没试成功。如下:
使用以下方法未能成功。请知情高手赐教。以下方法,关键的comp,就是任意的一个组件对象不知道用什么。因为我好像没用组件啊?

Applet的小应用程序是不是不能弹出子对话框?
能!
因为Dialog的构造函数的参数里的ower不是Frame,就是Dialog
循环调用getParent()方法并检测是否为Frame实例的方法可以获取浏览器的
引用。

那么如何在Applet里构造Dialog呢?
把浏览器的引用当作父窗口即可。

在Java applet中实现模式对话框的关键就是在创建一个对话框的时候 要为该对话框指定一个正确的父窗口.因为Applet是Panel类的子类,不 可以作为对话框的父窗口,所以首先要获得applet所在的窗口,作为模式 对话框的父窗口. 样例代码如下:

.....


Dialog d = new Dialog( getParentWindow(comp),title);


// comp为applet上的任意一个组件

....

public void getParentWindow(Component compOnApplet,String title){

Container c = compOnApplet.getParent();

while (c != null) {

if (c instanceof Frame)

return (Frame) c;

c = c.getParent();

}

return null;

}

[@more@]

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/8882012/viewspace-899157/ ,如需转载,请注明出处,否则将追究法律责任。

下一篇: BMP【转贴】
请登录后发表评论 登录
全部评论
  • 博文量
    4
  • 访问量
    36299