我用圖像製作了一個普通窗口。我想知道如何製作一個按鈕說「點擊這裏開始」,當按下這個按鈕將關閉程序並啓動另一個程序。Java如何關閉程序並從GUI移動到另一個
1
A
回答
5
我想先在看看How to use Buttons開始,也看看How to Use CardLayout
這將讓你有一個窗口和減少對你的塞康的轉換代碼,你需要
import java.awt.CardLayout;
import java.awt.EventQueue;
import java.awt.GridBagLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.UIManager;
import javax.swing.UnsupportedLookAndFeelException;
public class SimpleDemo {
public static void main(String[] args) {
new SimpleDemo();
}
public SimpleDemo() {
EventQueue.invokeLater(new Runnable() {
@Override
public void run() {
try {
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
} catch (ClassNotFoundException | InstantiationException | IllegalAccessException | UnsupportedLookAndFeelException ex) {
}
final CardLayout cardLayout = new CardLayout();
final JFrame frame = new JFrame("Testing");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setLayout(cardLayout);
JPanel startPanel = new JPanel(new GridBagLayout());
JButton startButton = new JButton("Start");
startPanel.add(startButton);
startButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
cardLayout.show(frame.getContentPane(), "game");
}
});
JLabel game = new JLabel("Game On", JLabel.CENTER);
frame.add(startPanel, "start");
frame.add(game, "game");
cardLayout.show(frame.getContentPane(), "start");
frame.pack();
frame.setLocationRelativeTo(null);
frame.setVisible(true);
}
});
}
+0
非常有幫助 – TheEagle 2013-03-20 00:31:45
2
要隱藏窗口但保留資源,請使用JFrame.setVisible(false)
。要完全擺脫它,請使用dispose()
方法。
要啓動新窗口,請使用與您用來啓動第一個窗口的代碼類似的代碼。
有很多資源可在網上和this website,這將有助於您瞭解如何創建一個按鈕,包括Oracle's own site:
0
直接讓主量(字符串[]) d程序啓動它。如果當前不再需要,請在其框架上調用dispose()。
你的第二個程序的類必須在類路徑中。這可以通過編寫適當的bash/bat啓動腳本來安排,也可以將所有類捆綁到單個jar中。
相關問題
- 1. 如何從一個gui到另一個gui的java gui轉換
- 2. 關閉一個Java應用程序並啓動另一個應用程序
- 3. 如何從另一個java程序啓動java程序?
- 4. python GUI關閉一個框架並打開另一個
- 5. 如何監視另一個應用程序,直到它關閉?
- 6. 如何從另一個viewcontroller關閉UIPopoverController?
- 7. 如何關閉另一個線程?
- 8. 當應用程序關閉時關閉另一個進程
- 9. 應用程序關閉時,繼續從景觀移動到肖像,並從一個活動發送價值到另一個活動
- 10. 關閉另一個應用程序
- 11. 如何在x秒內關閉Java GUI應用程序?
- 12. java - 如何打開程序並檢測程序何時關閉
- 13. 如何從另一個活動關閉活動Android
- 14. 從另一個Java應用程序啓動Java應用程序
- 15. 我想關閉一個由java程序從java啓動的windows進程
- 16. 如何從另一個程序啓動一個程序
- 17. 在按一下按鈕,關閉應用程序的Java GUI
- 18. 將對象從一個類移動到另一個類(Java)
- 19. 在JAVA中從一個框架移動到另一個框架
- 20. 使用距離從Object緩慢關閉到另一個移動對象
- 21. 你如何強制一個java swt程序「移動到前臺」?
- 22. 我如何優雅地關閉另一個應用程序?
- 23. 如何從java程序中調用另一個java進程
- 24. 如何在viewController中從一個tableview移動到另一個tableview?
- 25. 如何將文本從一個地方移動到另一個
- 26. 如何在WPF中從一個tabitem移動到另一個tabitem
- 27. 如何將項目從一個gridview移動到另一個gridview?
- 28. 如何將行從一個DataGridView移動到另一個DataGridView?
- 29. 如何將數據從一個表移動到另一個表#
- 30. 如何從一個tabviewcontroller移動到另一個tabviewcontroller?
你想在同一個程序中啓動另一個程序或啓動另一個窗口嗎? – HXCaine 2013-03-20 00:09:08
定義*「將關閉程序並啓動其他程序」*?您正在執行外部進程還是嘗試打開另一個Java窗口? – MadProgrammer 2013-03-20 00:09:20
對不起,我的意思是它會啓動我的代碼的第二位,這就像數學遊戲,所以你會提出另一個窗口 – TheEagle 2013-03-20 00:13:36