Java JFrame的问题。。。 请问JFrame能够实现对话框的模态功能么?即执行当前窗体不能进行其他的操作 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 此回复为自动发出,仅用于显示而已,并无任何其他特殊作用楼主【kiver149】截止到2008-07-17 00:19:31的历史汇总数据(不包括此帖):发帖的总数量:5 发帖的总分数:140 每贴平均分数:28 回帖的总数量:9 得分贴总数量:0 回帖的得分率:0% 结贴的总数量:5 结贴的总分数:140 无满意结贴数:0 无满意结贴分:0 未结的帖子数:0 未结的总分数:0 结贴的百分比:100.00% 结分的百分比:100.00% 无满意结贴率:0.00 % 无满意结分率:0.00 % 敬礼! 可以,JFrame为当前窗体,发生特定事件时弹出你需要的模态对话框,使用JDialog,在其构造方法中可以指定是否为模态,调用其setVisible方法让它显示。具体内容参考文档。 能不能需要弹出对话框让JFrame本身具有这样的功能 我不明白什么叫本身有这样的功能。你在frame中需要的时候,比如用户点了按钮或者执行了什么操作,你在事件处理中直接使用JDialog或者自己派生的新类不很方便吗? 简单例子:import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.JButton;import javax.swing.JDialog;import javax.swing.JFrame;public class Test { public static void main(String[] args) { new MyFrame("Test"); }}class MyFrame extends JFrame { public MyFrame(String title) { super(title); JButton button = new JButton("press"); button.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { JDialog dialog = new JDialog(MyFrame.this, "dialog", JDialog.DEFAULT_MODALITY_TYPE); dialog.setSize(200,200); dialog.setVisible(true); } }); button.setBounds(50, 50, 100, 100); getContentPane().setLayout(null); getContentPane().add(button); setSize(300, 400); setVisible(true); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); }} 比如说我有一个主界面在主界面中添加了JMenuBar,每一个JMenuItem都实现了一个JFrame窗口。。就是我点击JMenuItem以后打开一个JFrame.我想实现的效果是必须关闭当前打开的JFrame才能从JMenuItem中打开新的JFrame 这种情况下,JMenuItem打开JDialog好了 这个不是我已经做成JFrame了么所以想问问有没有别的途径实现这个JDialog的效果 DataInputStream里的readByte()读出来是乱码 用回溯策略求解八皇后问题 [求助]关于jdk1.5.0_06的classpath正确设置方法 为啥我插不进去? C#转JAVA-up有分! jb8有中文版吗?汉化包在那里下? 关于Method 类的问题 这是我出现问题的源代码,请各位指教,多谢帮忙!! 这段程序怎么编译不过?帮我看看 关于JAVA基础,求教各位大侠(JAVA初学者) java简单输入输出问题 接口可以实例化对象?
楼主【kiver149】截止到2008-07-17 00:19:31的历史汇总数据(不包括此帖):
发帖的总数量:5 发帖的总分数:140 每贴平均分数:28
回帖的总数量:9 得分贴总数量:0 回帖的得分率:0%
结贴的总数量:5 结贴的总分数:140
无满意结贴数:0 无满意结贴分:0
未结的帖子数:0 未结的总分数:0
结贴的百分比:100.00% 结分的百分比:100.00%
无满意结贴率:0.00 % 无满意结分率:0.00 %
敬礼!
你在frame中需要的时候,比如用户点了按钮或者执行了什么操作,你在事件处理中直接使用JDialog或者自己派生的新类不很方便吗?
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JDialog;
import javax.swing.JFrame;public class Test { public static void main(String[] args) {
new MyFrame("Test");
}
}class MyFrame extends JFrame { public MyFrame(String title) { super(title);
JButton button = new JButton("press");
button.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) {
JDialog dialog = new JDialog(MyFrame.this, "dialog", JDialog.DEFAULT_MODALITY_TYPE);
dialog.setSize(200,200);
dialog.setVisible(true);
}
});
button.setBounds(50, 50, 100, 100);
getContentPane().setLayout(null);
getContentPane().add(button);
setSize(300, 400);
setVisible(true);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
就是我点击JMenuItem以后打开一个JFrame.我想实现的效果是必须关闭当前打开的JFrame才能从JMenuItem中打开新的JFrame
这种情况下,JMenuItem打开JDialog好了
所以想问问有没有别的途径实现这个JDialog的效果