现在好了,我有这段代码:
package program.window;
import jaco.mp3.player.MP3Player;
public class obj {
private JFrame frame;
private static int xPosition = 30, yPosition = 30;
final JDesktopPane desktopPane = new JDesktopPane();
/**
* Launch the application.
*/
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
obj window = new obj();
window.frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
/**
* Create the application.
*/
public obj() {
initialize();
}
/**
* Initialize the contents of the frame.
*/
private void initialize() {
frame = new JFrame();
frame.setTitle("bD suite v.0.0012__EARLY__ALPHA");
frame.setBounds(574, 100, 745, 542);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.getContentPane().setLayout(new BorderLayout(0, 0));
JPanel panel = new JPanel();
frame.getContentPane().add(panel, BorderLayout.NORTH);
final JDesktopPane desktopPane = new JDesktopPane();
frame.getContentPane().add(desktopPane, BorderLayout.CENTER);
JButton btnMp3 = new JButton("Mp3");
btnMp3.setIcon(new ImageIcon("/home/zmaj/Pictures/free-mp3-cutter-and-editor.png"));
btnMp3.setSelectedIcon(new ImageIcon("/home/zmaj/Pictures/free-mp3-cutter-and-editor.png"));
btnMp3.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
JFileChooser mp3FileChooser = new JFileChooser();
mp3FileChooser.showOpenDialog(frame);
File selectedFile = mp3FileChooser.getSelectedFile();
if (selectedFile != null) {
JInternalFrame mp3Frame =
new JInternalFrame(selectedFile.getName(), true, true, true, true);
mp3Frame.setTitle("MP3 player");
mp3Frame.getContentPane().add(new JLabel("Sviram " + selectedFile.getName()));
mp3Frame.setSize(200, 50);
mp3Frame.setLocation(xPosition, yPosition);
xPosition += 100;
yPosition += 25;
desktopPane.add(mp3Frame);
mp3Frame.setVisible(true);
final MP3Player player = new MP3Player(selectedFile);
player.play();
mp3Frame.addInternalFrameListener(new InternalFrameAdapter() {
public void internalFrameClosing(InternalFrameEvent e) {
player.stop();
}
});
}
}
});
panel.add(btnMp3);
JButton btnImage = new JButton("Image");
btnImage.setIcon(new ImageIcon("/home/zmaj/Pictures/cloud-image.jpg"));
btnImage.setSelectedIcon(new ImageIcon("/home/zmaj/Pictures/cloud-image.jpg"));
btnImage.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
JFileChooser imageFileChooser = new JFileChooser();
imageFileChooser.showOpenDialog(frame);
File selectedFile = imageFileChooser.getSelectedFile();
if (selectedFile != null) {
JInternalFrame imageFrame = new JInternalFrame(
selectedFile.getName(), true, true, true, true);
imageFrame.setTitle("Prikazujem " + selectedFile.getName());
imageFrame.getContentPane().add(new JLabel(new
ImageIcon(selectedFile.getPath())));
imageFrame.setSize(200, 200);
imageFrame.setLocation(xPosition, yPosition);
xPosition += 50;
yPosition += 50;
desktopPane.add(imageFrame);
imageFrame.setVisible(true);
}
}
});
panel.add(btnImage);
JButton btnText = new JButton("Text");
btnText.setIcon(new ImageIcon("/home/zmaj/Pictures/insert-text.png"));
btnText.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
JFrame frame=new JFrame("Text Frame");
JTextArea textArea=new JTextArea("Welcome to notes,please write your text!",10,20);
frame.getContentPane().add(textArea);
frame.setTitle("bD notes");
frame.getContentPane().setLayout(new FlowLayout());
frame.setSize(250,250);
frame.setVisible(true);
}
});
panel.add(btnText);
}
}
我想添加一个按钮,打开一个包含系统控制台的新框架。我该怎么做?
我愿意导入新库并安装新的eclipse插件。
答案 0 :(得分:0)
对于Windows,您可以打开system console
,只需致电:
Process p = Runtime.getRuntime().exec("cmd /c start cmd.exe");
try {
p.waitFor();
} catch (InterruptedException e) {
e.printStackTrace();
}
当然,如果您在不同的操作系统上运行应用程序,这将是一个不同的调用。
编辑: 如果您希望此代码与OS无关,请使用:
String os = System.getProperty("os.name");
if(os.startsWith("Windows")) {
// make the command for windows
} else {
if(os.startsWith("Linux") {
// make the command for linux
else {
// make the command for mac
}
}