我用圖像製作了一個普通窗口。我想知道如何製作一個按鈕說「點擊這裏開始」,當按下這個按鈕將關閉程序並啓動另一個程序。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. Google App Engine - 將應用程序從關閉的帳戶轉移到另一個
- 7. 從一個部分移動的UITableViewCell到另一個程序
- 8. 如何從另一個viewcontroller關閉UIPopoverController?
- 9. 如何關閉另一個線程?
- 10. 如何從一個GUI類傳遞到另一個GUI類?
- 11. 無法關閉GUI程序
- 12. 當應用程序關閉時關閉另一個進程
- 13. 啓動Excel並從另一個程序
- 14. 應用程序關閉時,繼續從景觀移動到肖像,並從一個活動發送價值到另一個活動
- 15. 關閉另一個應用程序
- 16. 從Ant關閉Java程序?
- 17. 如何在x秒內關閉Java GUI應用程序?
- 18. 如何從VB.NET中的應用程序中關閉另一個應用程序?
- 19. java - 如何打開程序並檢測程序何時關閉
- 20. 從另一個線程關閉Python BasicHTTPServer
- 21. 從另一個線程關閉QTcpSocket
- 22. 關閉另一個活動
- 23. 如何從一列移動到另一
- 24. 如何從另一個活動關閉活動Android
- 25. 如何從另一個java程序運行java程序?
- 26. 如何從另一個java程序調用java程序?
- 27. 將幾行從一個表移動到另一個並休息到另一個
- 28. 如何從另一個應用程序啓動移動應用程序?
- 29. 從一個JFrame移動到另一個
- 30. 從一個ViewController移動到另一個
你想在同一個程序中啓動另一個程序或啓動另一個窗口嗎? – HXCaine 2013-03-20 00:09:08
定義*「將關閉程序並啓動其他程序」*?您正在執行外部進程還是嘗試打開另一個Java窗口? – MadProgrammer 2013-03-20 00:09:20
對不起,我的意思是它會啓動我的代碼的第二位,這就像數學遊戲,所以你會提出另一個窗口 – TheEagle 2013-03-20 00:13:36