import java.awt.DisplayMode;
import java.awt.GraphicsDevice;
import java.awt.GraphicsEnvironment;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFileChooser;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class Sample {
public static String audioName;
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
final JFrame frame = new JFrame();
frame.setTitle("Frame");
frame.setSize(800, 600);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
GraphicsDevice device = GraphicsEnvironment.getLocalGraphicsEnvironment().getDefaultScreenDevice();
device.setFullScreenWindow(frame);
device.setDisplayMode(new DisplayMode(800, 600, 32, 60));
frame.setVisible(true);
JButton btn = new JButton();
btn.setText("Button");
JPanel panel = new JPanel();
panel.add(btn);
frame.add(panel);
btn.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
JFileChooser chooser = new JFileChooser();
int returnName = chooser.showOpenDialog(frame);
if (returnName == JFileChooser.APPROVE_OPTION) {
System.out.println("Sample");
}
}
});
}
}
如何在全屏幕中顯示JFileChooser?我不熟悉JInternalFrame/JDesktopPane,你認爲這會解決這個問題還是有另一種方法呢?JFileChooser外部顯示完全屏蔽JFrame
如果Java應用程序更改我的Windows顯示設置,我將永遠不會再使用該應用程序。 –
@GilbertLeBlanc,java只會在運行應用程序時將其臨時更改。 – Jong
@GilbertLeBlanc可能已經注意到同樣的效果,讓我對這段代碼非常感興趣。每次運行它時,它都會將屏幕最右側的兩個屏幕WinAmp強制放置在新屏幕大小的限制範圍內。這讓我意識到,看起來全屏模式在每一步都能捕捉到你。什麼是這個應用程序非常重要。它應該是'全屏'? –