我在java中创建了一个具有多种形式的应用程序。 在应用程序开始时,在按钮单击事件上打开新表单,在Windows的任务栏上,该表单的图标数量会增加。 我想要的只是应该在任务栏上显示应用程序图标,无论一个表单是打开还是多个表单。
答案 0 :(得分:2)
答案 1 :(得分:2)
发生问题是因为每个JFrame
都会获得一个任务栏图标。有关众多解决方案的链接,请参阅The Use of Multiple JFrames, Good/Bad Practice?。
答案 2 :(得分:0)
如果您已将新窗口作为JDialog并且仍然面临任务栏中有两个图标的问题,则可能是您正在创建模态JDialog,如下所示:
JDialog dialog = new JDialog((JFrame) null, true);
将owner
(第一个)参数设置为null,应用程序在对话框的任务栏中创建一个新图标。因此,为了避免这种情况,只需在打开对话框时将对框架的引用传递给对话框构造函数(例如,通过单击按钮)。像这样:
public class MyBrandNewDialog {
public MyBrandNewDialog(JFrame owner) {
// create new modal dialog (the second argument is for modality)
JDialog dialog = new JDialog(owner, true);
// ...
}