在Windows任务栏上显示JDialog

我正在尝试JDialog在Windows中显示。如何在Windows任务栏上显示JDialog(如JFrame)?

回答:

对话框本身不能具有任务栏条目,但是您可以构造一个没有任何可见效果的框架,并将其用作对话框的父级。然后,该对话框看起来像具有任务栏条目。以下代码显示了如何执行此操作:

class MyDialog extends JDialog {

private static final List<Image> ICONS = Arrays.asList(

new ImageIcon("icon_16.png").getImage(),

new ImageIcon("icon_32.png").getImage(),

new ImageIcon("icon_64.png").getImage());

MyDialog() {

super(new DummyFrame("Name on task bar", ICONS));

}

public void setVisible(boolean visible) {

super.setVisible(visible);

if (!visible) {

((DummyFrame)getParent()).dispose();

}

}

}

class DummyFrame extends JFrame {

DummyFrame(String title, List<? extends Image> iconImages) {

super(title);

setUndecorated(true);

setVisible(true);

setLocationRelativeTo(null);

setIconImages(iconImages);

}

}

以上是 在Windows任务栏上显示JDialog 的全部内容, 来源链接: utcz.com/qa/409548.html

回到顶部