A。首先你的圖片路徑找不到,所以沒有東西顯示。
從事大邑服務(wù)器托管,服務(wù)器租用,云主機(jī),網(wǎng)頁空間,國際域名空間,CDN,網(wǎng)絡(luò)代維等服務(wù)。
解決方法,1.如果你用eclipse那首頌輪么到workspace下找到項(xiàng)目路徑下的櫻渣bin文件夾,將圖片放到 與.Class文件同目錄下。
2.或者修改代碼
ImageIcon icon1 = new ImageIcon("mouse.gif ");
將其中的"mouse.gif "指定為你圖者信片所在的路徑.
B.第二個(gè)問題是
public void mousePressed(MouseEvent e) 的左面有個(gè)小三角形是eclipse的提示,說明本方法繼承自其它父類的方法。
另外,代碼雖然沒有什么錯(cuò),但是本身這樣的寫實(shí)有問題的。比如設(shè)計(jì)模式,重用性等等。
既然前面的問題解決了,那么背景當(dāng)然是加代碼如下了:
Container c = getContentPane();
c.setBackground(Color.red);
如果想要加自定義的圖片作為背景有點(diǎn)麻煩:
1.首先設(shè)置一個(gè)label
ImageIcon background = new ImageIcon("test.jpg");
JLabel label = new JLabel(background);
// 把標(biāo)簽的大小位置設(shè)置為圖片剛好填充整個(gè)面板
label.setBounds(0, 0, background.getIconWidth(),
background.getIconHeight());
// 把內(nèi)容窗格轉(zhuǎn)化為JPanel,否則不能用方法setOpaque()來使內(nèi)容窗格透明
imagePanel = (JPanel) frame.getContentPane();
imagePanel.setOpaque(false);
// 內(nèi)容窗格默認(rèn)的布局管理器為BorderLayout
imagePanel.setLayout(new FlowLayout());
imagePanel.add(new JButton("測試按鈕"));
frame.getLayeredPane().setLayout(null);
// 把背景圖片添加到分層窗格的最底層作為背景
frame.getLayeredPane().add(label, new Integer(Integer.MIN_VALUE));
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(background.getIconWidth(), background.getIconHeight());
frame.setResizable(false);
frame.setVisible(true);
你做的是iptv游戲嗎 機(jī)頂盒游戲嗎 還是塌雹禪模擬器運(yùn)行的啊
請?zhí)峁└嘣敿?xì)團(tuán)塵信息,方便問題定肆辯位朋友
public void mouseClicked(MouseEvent e){\x0d\x0aObject source=e.getSource(); //獲取事件源,即地鼠標(biāo)簽\x0d\x0aif(source instanceof JLabel){ //如果事件是舉塵標(biāo)簽組件\x0d\x0aJLabel mouse=(JLabel)source; //正姿禪強(qiáng)制轉(zhuǎn)換為JLabel標(biāo)簽\x0d\x0amouse.setIcon(null); //取消標(biāo)簽圖標(biāo)\x0d\x0a}\x0d\x0a}\x0d\x0a});\x0d\x0athis.getContentPane().add(mouses[i]); //添加顯示地鼠的標(biāo)簽到窗體\x0d\x0a}\x0d\x0a\x0d\x0amouses[0].setLocation(253, 300); //設(shè)置每個(gè)標(biāo)簽的位置\x0d\x0amouses[1].setLocation(333, 250);\x0d\x0amouses[2].setLocation(388, 296);\x0d\x0amouses[3].setLocation(362, 364);\x0d\x0amouses[4].setLocation(189, 353);\x0d\x0amouses[5].setLocation(240, 409);\x0d\x0a\x0d\x0afinal JLabel backLabel=new JLabel(); //創(chuàng)建顯示背景的標(biāo)簽冊差\x0d\x0abackLabel.setBounds(0, 0, img.getIconWidth(), img.getIconHeight());\x0d\x0athis.setBounds(100,100,img.getIconWidth(),img.getIconHeight());\x0d\x0abackLabel.setIcon(img); //添加背景到標(biāo)簽\x0d\x0athis.getContentPane().add(backLabel); //添加背景標(biāo)簽到窗體\x0d\x0a}\x0d\x0a/**\x0d\x0a* 線程的核心方法\x0d\x0a*/\x0d\x0a\x0d\x0apublic void run(){\x0d\x0awhile(true){ //使用無限循環(huán)\x0d\x0atry{\x0d\x0aThread.sleep(3000); //使線程休眠3秒\x0d\x0aint index=(int)(Math.random()*6); //生成隨機(jī)的地鼠索引\x0d\x0aif(mouses[index].getIcon()==null){ //如果地鼠標(biāo)簽沒有設(shè)置圖片\x0d\x0amouses[index].setIcon(imgMouse); //為該標(biāo)簽添加地鼠圖片\x0d\x0a}\x0d\x0a}catch(InterruptedException e){\x0d\x0ae.printStackTrace();\x0d\x0a}\x0d\x0a}\x0d\x0a}\x0d\x0a\x0d\x0a}
增加一個(gè)count計(jì)洞顫粗?jǐn)?shù),用來統(tǒng)計(jì)打中的次數(shù)。
點(diǎn)擊一個(gè)洞高button的時(shí)候,判斷當(dāng)前點(diǎn)擊的button的顏色是不納鎮(zhèn)是紅色,如果是,count++