在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