如何使用java在windows中设置弹出窗口?
我已经使用Swing创建了一个应用程序。 我正在尝试使用JWindow创建一个弹出式通知(而不是使用JOptionPane),使它看起来像一个windows弹出式通知,并且我没有出错 问题是,当我将此窗口链接到我的大型机(JFrame)(一个用于其他目的的大型机,包含将导致此弹出窗口触发的代码)时,弹出通知窗口将失去其位置,并且位置与大型机相关 如何将其设置为与大型机无关,并且其位置保持独立 下面是弹出窗口的代码如何使用java在windows中设置弹出窗口?,java,swing,Java,Swing,我已经使用Swing创建了一个应用程序。 我正在尝试使用JWindow创建一个弹出式通知(而不是使用JOptionPane),使它看起来像一个windows弹出式通知,并且我没有出错 问题是,当我将此窗口链接到我的大型机(JFrame)(一个用于其他目的的大型机,包含将导致此弹出窗口触发的代码)时,弹出通知窗口将失去其位置,并且位置与大型机相关 如何将其设置为与大型机无关,并且其位置保持独立 下面是弹出窗口的代码 popWindow= new JWindow(); popWindow.setLa
popWindow= new JWindow();
popWindow.setLayout(null);
Toolkit tool = Toolkit.getDefaultToolkit();
Dimension dim= tool.getScreenSize();
int xPos= dim.width - (WIDTH+60);
int yPos= dim.height - (HEIGHT+60);
popWindow.setBounds(xPos, yPos, HEIGHT, WIDTH);
msgLabel= new JLabel("PopUp window");
msgLabel.setBounds(10,0,200,100);
buttonIcon = new ImageIcon("C:\\Users\\tt\\Desktop\\close_icon.png");
closeButton = new JButton(buttonIcon);
closeButton.setBounds(275,0,25,25);
closeButton.addActionListener( new ActionListener(){
public void actionPerformed(ActionEvent ae){
popWindow.dispose();
}
});
popWindow.add(closeButton);
popWindow.add(msgLabel);
popWindow.setVisible(true);
我已将此代码保存在其他java文件中,并使用其构造函数将其链接到我的大型机。当我单独运行时,定位非常完美。//检查是否支持SystemTray 如果(!SystemTray.isSupported()){ System.out.println(“不支持系统托盘”); 返回; } 最终弹出菜单弹出=新建弹出菜单(); 最后一场比赛= 新TrayIcon(createImage(“images/bull.gif”,“托盘图标”); 最终SystemTray=SystemTray.getSystemTray()
你是在问显示器屏幕上框架的起始显示位置吗?@user3437460我没听清你的问题!开始显示位置是什么意思?我在问
是什么意思,我如何设置它与主机无关,并且它的位置保持独立
@user3437460我使用Swing代码制作了一个应用程序。这是一个包含很多内容的JFrame,我为上面的代码创建了一个单独的类文件,比如“popup.java”。当我单独运行文件“popup.java”中的代码时,它会出现在屏幕上它应该出现的地方。现在,当我在JFrame代码中使用这个类文件并运行JFrame时,这个弹出窗口的位置会改变。那么,我应该怎么做才能使它的位置保持与我单独运行时的位置相同呢?它出现在屏幕上,它应该出现在屏幕上,因此您创建的帧应该出现在屏幕上的什么位置?在你的屏幕中央然后我运行我的JFrame,这个弹出窗口的位置改变了
它是如何改变的?这不是我现在想要的,但是感谢您的帮助并告诉我如何设置系统托盘!:)
// Create a pop-up menu components
MenuItem aboutItem = new MenuItem("About");
CheckboxMenuItem cb1 = new CheckboxMenuItem("Set auto size");
CheckboxMenuItem cb2 = new CheckboxMenuItem("Set tooltip");
Menu displayMenu = new Menu("Display");
MenuItem errorItem = new MenuItem("Error");
MenuItem warningItem = new MenuItem("Warning");
MenuItem infoItem = new MenuItem("Info");
MenuItem noneItem = new MenuItem("None");
MenuItem exitItem = new MenuItem("Exit");
//Add components to pop-up menu
popup.add(aboutItem);
popup.addSeparator();
popup.add(cb1);
popup.add(cb2);
popup.addSeparator();
popup.add(displayMenu);
displayMenu.add(errorItem);
displayMenu.add(warningItem);
displayMenu.add(infoItem);
displayMenu.add(noneItem);
popup.add(exitItem);
trayIcon.setPopupMenu(popup);
try {
tray.add(trayIcon);
} catch (AWTException e) {
System.out.println("TrayIcon could not be added.");
}