❶ java游戲菜單
java設置游戲菜單可以很樸素 ,也可以比較華麗,簡單的寫了兩個參考效果
importjava.awt.*;
importjava.awt.event.*;
importjavax.swing.*;
//這個代表掃雷窗口
classSLextendsJFrame{
publicSL(){
getContentPane().setBackground(Color.BLUE);
setTitle("掃雷");
setSize(MenuFrame.W,MenuFrame.H);
setLocationRelativeTo(null);
setDefaultCloseOperation(EXIT_ON_CLOSE);
setVisible(true);
}
}
//這個代表圍棋窗口
classWQextendsJFrame{
publicWQ(){
getContentPane().setBackground(Color.ORANGE);
setTitle("圍棋");
setSize(MenuFrame.W,MenuFrame.H);
setLocationRelativeTo(null);
setDefaultCloseOperation(EXIT_ON_CLOSE);
setVisible(true);
}
}
//這個代表菜單選擇窗口
{
publicstaticfinalintW=300;
publicstaticfinalintH=200;
JButtonjb1,jb2;
publicMenuFrame(){
JPaneljp=newJPanel();
BoxLayoutbox=newBoxLayout(jp,BoxLayout.Y_AXIS);//垂直方向的布局
jp.setLayout(box);
jb1=newJButton("益智掃雷");
jb1.addActionListener(this);
jb2=newJButton("圍棋春秋");
jb2.addActionListener(this);
JButtonjb3=newJButton("再續前緣");
JButtonjb4=newJButton("退隱江湖");
JButtonjb5=newJButton("幫助文檔");
jp.add(jb1);
jp.add(jb2);
jp.add(jb3);
jp.add(jb4);
jp.add(jb5);
add(jp);
setLayout(newFlowLayout());
setTitle("javaGameCenter");
setSize(W,H);
setLocationRelativeTo(null);//窗口居中
setDefaultCloseOperation(EXIT_ON_CLOSE);
}
publicstaticvoidmain(String[]args){
SwingUtilities.invokeLater(()->{
newMenuFrame().setVisible(true);//啟動菜單窗口
});
}
@Override
publicvoidactionPerformed(ActionEvente){
JButtonjb=(JButton)e.getSource();
if(jb==jb1){
//隱藏關閉菜單窗口
this.setVisible(false);
this.dispose();
//打開掃雷窗口
newSL().setVisible(true);
}elseif(jb==jb2){
this.setVisible(false);
this.dispose();
newWQ().setVisible(true);
}
}
}
❷ JAVA 編寫一個帶有窗口的應用程序
這樣:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.awt.Graphics;
public class MainClass extends JFrame {
public JComboBox box;
int flag = 0;
jpNewPanel jpNewPanel;
public static void main(String[] args) {
MainClass frame = new MainClass();
frame.setBounds(650,300,550,550);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setTitle("信號燈");
frame.setVisible(true);
}
public MainClass() {
box = new JComboBox();
box.addItem("請選擇");
box.addItem("紅燈");
box.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
flag = box.getSelectedIndex();
jpNewPanel.repaint();
}
});
box.addItem("黃燈");
box.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
flag = box.getSelectedIndex();
jpNewPanel.repaint();
}
});
box.addItem("綠燈");
box.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
flag = box.getSelectedIndex();
jpNewPanel.repaint();
}
});
add(box, BorderLayout.NORTH);
jpNewPanel = new jpNewPanel();
add(jpNewPanel, BorderLayout.CENTER);
}
class jpNewPanel extends JPanel {
protected void paintComponent(Graphics g) {
super.paintComponent(g);
g.drawOval(150, 0, 120, 120);
if (flag == 1) {
g.setColor(Color.RED);
g.fillOval(150, 0, 120, 120);
} else if (flag == 2) {
g.setColor(Color.YELLOW);
g.fillOval(150, 0, 120, 120);
} else if (flag == 3) {
g.setColor(Color.GREEN);
g.fillOval(150, 0, 120, 120);
}
}
}
}
注意事項
每個Road對象都有一個name成員變數來代表方向,有一個vehicles成員變數來代表方向上的車輛集合。
在Road對象的構造方法中啟動一個線程每隔一個隨機的時間向vehicles集合中增加一輛車(用一個「路線名_id」形式的字元串進行表示)。
在Road對象的構造方法中啟動一個定時器,每隔一秒檢查該方向上的燈是否為綠,是則列印車輛集合和將集合中的第一輛車移除掉。
❸ java點擊菜單項彈出窗口怎麼弄
代碼缺一行:
。。。
authorTextArea.setPreferredSize(new Dimension(40, 80));
authorFrame.add(authorTextArea);
。。。
以上完了後,需要加一個
authorFrame.setVisible(true);
至於這個框的大小,你再調調哈版,相互學習~權,三年沒做過了~
❹ javaSwing如何創建一個有工具條和菜單的窗口
代碼如下:
publicclassAppextendsJFrame{
publicApp(){
this.setSize(400,400);
this.setLocationRelativeTo(null);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//添加菜單
JMenuBarmenuBar=newJMenuBar();
this.setJMenuBar(menuBar);
JMenumenu=newJMenu("文件");
menuBar.add(menu);
JMenuItemtestMenuItem=newJMenuItem("打開");
testMenuItem.addActionListener(e->JOptionPane.showMessageDialog(this,"打開"));
menu.add(testMenuItem);
//添加工具欄
JToolBartoolBar=newJToolBar();
this.add(toolBar,BorderLayout.NORTH);
JButtonbtnSave=newJButton("保存");
btnSave.addActionListener(e->JOptionPane.showMessageDialog(this,"保存"));
toolBar.add(btnSave);
}
publicstaticvoidmain(String[]args){
newApp().setVisible(true);
}
}
運行結果:
❺ JAVA 創建一個帶菜單的窗口,點擊菜單項,窗口顯示不同內容,這個怎麼實現最好用卡片布局。
你這個程序就是卡片布局了,有2個小錯誤就是沒有對p,c1定義為final.我幫你修改好了
import java.awt.*;
import java.awt.event.*;
public class XtLcb extends Frame
{
public static void main(String args[])
{
Frame frame = new Frame();
frame.setBackground(Color.lightGray);
frame.setSize(400,400);
frame.setVisible(true);
final CardLayout cl = new CardLayout();
MenuBar menuBar = new MenuBar();
Menu menuFile = new Menu();
MenuItem menuFileExit = new MenuItem();
MenuItem menuFileOpen = new MenuItem();
MenuItem menuFileOn = new MenuItem();
menuFile.setLabel("File");
menuFileExit.setLabel("Exit");
menuFileOpen.setLabel("Open");
menuFileOn.setLabel("On");
final Panel p = new Panel();
p.setLayout(cl);
Panel p1 = new Panel();
Panel p2 = new Panel();
p1.add(new Label("Open"));
p2.add(new Label("On"));
p.add(p1,"1");
p.add(p2,"2");
frame.add(p);
// Add action listener.for the menu button
menuFileExit.addActionListener
(
new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
System.exit(0);
}
}
);
menuFileOpen.addActionListener
(
new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
cl.show(p,"1");
}
}
);
menuFileOn.addActionListener
(
new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
cl.show(p,"2");
}
}
);
menuFile.add(menuFileOpen);
menuFile.add(menuFileOn);
menuFile.add(menuFileExit);
menuBar.add(menuFile);
frame.setMenuBar(menuBar);
// Add window listener.
frame.addWindowListener
(
new WindowAdapter()
{
public void windowClosing(WindowEvent e)
{
System.exit(0);
}
}
);
}
/**
* Shutdown procere when run as an application.
*/
/*void windowClosed()
{
// TODO: Check if it is safe to close the application
// Exit application.
System.exit(0);
}*/
}
❻ 怎麼用java寫一個窗體程序
下面介紹如來何用簡單的幾句話在eclipse環境源下出現一個窗口。
首先寫一個frame類,繼承Frame,是繼承widows 然後把,出現窗口的語句封裝成一個函數
public void lunchFrame(){
this.setLocation(0,0);
this.setSize(20,20);
setVisible(True); //一定要寫這句話
}
最後只需要在主函數裡面調用就可以