第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

你好,在java中用paint畫背景后,控件不顯示,請問怎么改???

你好,在java中用paint畫背景后,控件不顯示,請問怎么改啊?

紫衣仙女 2022-05-26 15:11:36
public class Testio extends JFrame{/*** @throws MalformedURLException*/public static void main(String[] args) throws MalformedURLException {MyJPanel mj=new Testio().new MyJPanel();JFrame jf=new JFrame("image");jf.setContentPane(mj);Container c=jf.getContentPane();jf.setSize(1400, 800);jf.setLocationRelativeTo(null);jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);jf.setVisible(true);c.setLayout(null);JTextField jl=new JTextField("HAVE A QUESTION");c.add(jl);}class MyJPanel extends JPanel{Image i;public MyJPanel() throws MalformedURLException{URL url=new URL("file:///D:/0.jpg");i=Toolkit.getDefaultToolkit().getImage(url);}public void paint(Graphics g){super.paint(g);Graphics2D g2=(Graphics2D) g;g2.drawImage(i, 0, -30,this);}}}
查看完整描述

2 回答

?
桃花長相依

TA貢獻1860條經(jīng)驗 獲得超8個贊

做一個實例給你吧。這樣做也可以的。

import java.awt.*;
import javax.swing.*;
public class Test extends JFrame{

JPanel jp=(JPanel)this.getContentPane();
public Test()
{
jp.setLayout(null);
JLabel jl=new JLabel("JLabel");
JButton jb=new JButton("Button");
jl.setBounds(new Rectangle(20,20,80,25));
jb.setBounds(new Rectangle(20,60,80,25));
jp.add(jl);
jp.add(jb);
}
public static void main(String[] args) {
Test frame=new Test();
frame.setResizable(false);
ImageIcon img = new ImageIcon("./images/backimage.jpg");//這是背景圖片,注意這里是局部路勁在項目名下面的目錄里,比如../項目名/images/...
JLabel imgLabel = new JLabel();//將背景圖放在標簽里。
imgLabel.setIcon(img);
frame.getLayeredPane().add(imgLabel, new Integer(Integer.MIN_VALUE));//注意這里是關鍵,將背景標簽添加到jfram的LayeredPane面板里。
imgLabel.setBounds(0,0,img.getIconWidth(), img.getIconHeight());//設置背景標簽的位置
Container cp=frame.getContentPane();
cp.setLayout(new BorderLayout());
((JPanel)cp).setOpaque(false); //注意這里,將內(nèi)容面板設為透明。這樣LayeredPane面板中的背景才能顯示出來。
frame.setSize(1024,544);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
}



查看完整回答
反對 回復 2022-05-30
?
翻翻過去那場雪

TA貢獻2065條經(jīng)驗 獲得超14個贊

JTextField jl=new JTextField("HAVE A QUESTION");
jl.setLayout(null);
jl.setBounds(0,0, 200, 30);
c.add(jl);
c.repaint();
c是layout等于null。

查看完整回答
反對 回復 2022-05-30
  • 2 回答
  • 0 關注
  • 527 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號