java程序中怎麼設置背景圖片,javaweb怎麼用圖片做背景

本文目錄一覽:

Java怎麼添加背景圖片?

這是我以前的一個小代碼你可以看看

public class demo_9 extends JFrame {

JSplitPane jsp = null;

JList jlist;

JLabel jlabel;

public static void main(String[] args) {

demo_9 a = new demo_9();

}

public demo_9(){

String []words ={“boy”,”girl”};

JList jlist = new JList(words);

jlabel = new JLabel(new ImageIcon(“Image//真三.gif”)); //這裡就是引入圖片了

//拆分窗格

jsp = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT,jlist,jlabel);

jsp.setDividerLocation(70);

//設置可以伸縮

jsp.setOneTouchExpandable(true);

this.add(jsp);

this.setTitle(“test”);

this.setSize(400,300);

this.setLocation(400,200);

this.setVisible(true);

}

}

步驟:首先先在project里新建個文件夾(Folder),然後把你要插入的圖片複製黏貼到這個文件夾裡面。

例如我那個引入的圖片代碼:jlabel = new JLabel(new ImageIcon(“Image//真三.gif”));

我new一個folder叫Image,圖片名稱叫”真三.gif”

怎麼在Java里添加背景圖片

可以新建個面板,在面板里放入帶圖片的JLabel,填滿面板即可。

JPanel jp = new JPanel(); //新建面板

jp.setLayout(new FlowLayout()); //設置面板布局

ImageIcon ii=new ImageIcon(getClass().getResource(“/Picture/i.jpg”));

JLabel uppicture=new JLabel(ii); //往面板里加入JLabel

this.setVisible(true);

怎麼為Java程序添加背景圖片代碼?

僅僅是給窗口添加背景的話是很簡單的,添加上以下語句(自己去添加變數哈):\x0d\x0a\x0d\x0alabel = new JLabel(background); //background為ImageIcon\x0d\x0a// 把標籤的大小位置設置為圖片剛好填充整個面板 \x0d\x0alabel.setBounds(0, 0, this.getWidth(), this.getHeight());\x0d\x0a//添加圖片到frame的第二層(把背景圖片添加到分層窗格的最底層作為背景)\x0d\x0athis.getLayeredPane().add(label,new Integer(Integer.MIN_VALUE));\x0d\x0a//把內容窗格轉化為JPanel,否則不能用方法setOpaque()來使內容窗格透明\x0d\x0ajPanel=(JPanel)this.getContentPane();\x0d\x0a//設置透明\x0d\x0ajPanel.setOpaque(false);\x0d\x0a\x0d\x0a然後你上面那個JPanel p也設置成透明就可以了

java程序中怎麼設置背景圖片?

這是我在網上找到的,大家看看,我也是個超級菜鳥

import java.awt.Graphics;

import javax.swing.ImageIcon;

import javax.swing.JButton;

import javax.swing.JFrame;

import javax.swing.JPanel;

public class TestBackground extends JFrame{

ImageIcon img;

public TestBackground(){

img = new ImageIcon(“D:/temp/Winter.jpg”);

JPanel panel = new JPanel(){

public void paintComponent(Graphics g){

g.drawImage(img.getImage(), 0, 0, null);

super.paintComponent(g);

}

};

panel.setOpaque(false);

panel.add( new JButton( “Hello” ) );

setContentPane( panel );

}

public static void main(String [] args){

TestBackground frame = new TestBackground();

frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

frame.setSize(300, 300);

frame.setVisible(true);

}

}

Java怎麼添加背景圖片

//一個小例子

//注意:

//當前目錄下要有一個p.jpg文件

//壓縮這個文件使它的大小盡量小,最好只有幾十KB

//否則無法顯示背景圖片

import javax.swing.*;

import java.awt.*;

public class Demo extends JFrame {

public static void main(String[] args) {

new Demo();

}

public Demo() {

//載入圖片

pic=Toolkit.getDefaultToolkit().getImage(“p.jpg”);

MediaTracker t=new MediaTracker(this);

t.addImage(pic,1);

try

{

t.waitForID(1);

}

catch(Exception e)

{

}

setSize(400,400);

setLocationRelativeTo(null);

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

setVisible(true);

}

//覆蓋(重寫)paint方法以在窗口中添加一張圖片

public void paint(Graphics g) {

g.drawImage(pic,0,0,null);

}

Image pic;

}

java中如何設置背景圖片

1 利用標籤組件來設置

標籤本來是一種最簡單的組件,為什麼可以將它設置成為一個窗體的背景呢?首先還是要了解框架JFrame中的層次結構。JFrame中的層次分布及相對關係是:最底層是JRootPane,第二層是JlayerPane,最上層就是ContentPane,也正是我們常說的內容面板。所以一般我們拖放的控制項就是在ContentPane層上。也就是說我們只需將背景圖片放在JFrame的第二層是JlayerPane上,再把內容面板ContentPane設置為透明,則第二層JlayerPane上放置的圖片即成為內容面板的背景了。具體代碼如下:

JPanelpnlMain=new JPanel(); //創建面板pnlMain。

getContentPane().add(pnlMain); //將pnlMain設置為主面板。

Iconi=new ImageIcon(“背景.jpg”); /*用源圖片「背景.jpg」構造一個ImageIcon對象i,需要注意如果圖片的路徑使用的是相對路徑,則圖片文件必須放在類文件所在文件夾或項目的根文件夾中,否則圖片的路徑必須用絕對路徑。*/

JLabellblLogo = new JLabel(i); //用指定的圖片構造標籤對象lb

this.getLayeredPane().add(lb, new Integer(Integer.MIN_VALUE));

//把標籤放在第二層JlayerPane上。

lb.setBounds(0, 0,ii.getIconWidth(),i.getIconHeight());

//設置標籤的尺寸,即背景圖象的大小。

getConentPane().setOpaque(false); /*把內容面板設置為透明,這樣整個框架的背景就不再是內容面板的背景色,而是第二層中標籤的圖像。*/

pnlMain.add(lb); //將標籤添加到主面板pnlMain中。

用標籤組件JLabel來設置窗體背景,其擴展性上比較差,且在標籤上不能放置其他組件,比如:在放置一個JButton,整個布局背景圖就錯亂。導致這種現象是因為Java載入組件是有順序的,作為背景的JLabel的代碼一定要放在全部組件代碼的最後,這樣JLabel的背景圖片才不會被其他組件遮住,從而使整個布局背景錯亂。所以採用這種方式來設置窗體背景有很大的局限性。因此最好是採用以下方式來設置窗體背景。

2 通過JPanel面板來設置窗體背景

JPanel面板是Java中的容器之一。而Java中的容器是沒有背景圖片的屬性的,它們只有背景顏色,如果需要在JPanel面板上設置窗體背景,就需要重寫paintComponent(Graphics g)方法,即把所要設置的背景圖片畫上作為JPanel面板的背景。具體實現如下:

首先定義一個JPanel的子類BjPanel,由於JPanel的構造方法不能添加圖像,因此在創建此子類的時候先用getImage載入一幅背景圖片,在重寫paintComponent(Graphics g)方法時,利用drawImage方法將其逐漸繪製到屏幕上,並將該面板添加到框架中,最後將該面板設置為透明。其代碼如下:

import java.awt.*;

import javax.swing.*;

public class bkground

{

public static void main(String args[])

{

BjFramef=newBjFrame();

f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

f.setVisible(true);

}

}

class BjFrame extends JFrame

{

public BjFrame()

{

setSize(WTH,HHT);

BjPanel pl=new BjPanel();

Container contentPane=getContentPane();

contentPane.add(pl);

pl. setOpaque(true);

}

public static final int WTH=300;

public static final int HHT=200;

}

class BjPanel extends JPanel

{

Image im;

public BjPanel()

{

im=Toolkit.getDefaultToolkit().getImage(“背景.jpg”);//需要注意的是如果用相對路徑載入圖片,則圖片文件必須放在類文件所在文件夾或項目的根文件夾中,否則必須用絕對路徑。

}

public void paintComponent(Graphics g)

{

super.paintComponent(g);

int imWidth=image.getWidth(this);

Int imHeight=image.getHeight(this); //定義圖片的寬度、高度

int FWidth=getWidth();

int FHeight=getHeight();//定義窗口的寬度、高度

int x=(FWidth-imWidth)/2;

int y=(FHeight-imHeight)/2;//計算圖片的坐標,使圖片顯示在窗口正中間

g.drawImage(image,x,y,null);//繪製圖片

}

}

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/232556.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-11 12:52
下一篇 2024-12-11 12:52

相關推薦

  • Python程序需要編譯才能執行

    Python 被廣泛應用於數據分析、人工智慧、科學計算等領域,它的靈活性和簡單易學的性質使得越來越多的人喜歡使用 Python 進行編程。然而,在 Python 中程序執行的方式不…

    編程 2025-04-29
  • python強行終止程序快捷鍵

    本文將從多個方面對python強行終止程序快捷鍵進行詳細闡述,並提供相應代碼示例。 一、Ctrl+C快捷鍵 Ctrl+C快捷鍵是在終端中經常用來強行終止運行的程序。當你在終端中運行…

    編程 2025-04-29
  • 用Python繪製酷炫圖片

    在本篇文章中,我們將展示如何使用Python繪製酷炫的圖片。 一、安裝Python繪圖庫 在使用Python繪製圖片之前,我們需要先安裝Python繪圖庫。Python有很多繪圖庫…

    編程 2025-04-29
  • Python換背景後,邊緣降噪怎麼辦?

    對於這個問題,我們可以從多個方面來解決。 一、背景替換的方法 在背景替換之前,我們需要先將圖像的邊緣進行處理,避免在替換過程中出現鋸齒狀的邊緣。 首先,我們可以通過腐蝕和膨脹的操作…

    編程 2025-04-29
  • Python程序文件的拓展

    Python是一門功能豐富、易於學習、可讀性高的編程語言。Python程序文件通常以.py為文件拓展名,被廣泛應用於各種領域,包括Web開發、機器學習、科學計算等。為了更好地發揮P…

    編程 2025-04-29
  • Python購物車程序

    Python購物車程序是一款基於Python編程語言開發的程序,可以實現購物車的相關功能,包括商品的添加、購買、刪除、統計等。 一、添加商品 添加商品是購物車程序的基礎功能之一,用…

    編程 2025-04-29
  • 爬蟲是一種程序

    爬蟲是一種程序,用於自動獲取互聯網上的信息。本文將從如下多個方面對爬蟲的意義、運行方式、應用場景和技術要點等進行詳細的闡述。 一、爬蟲的意義 1、獲取信息:爬蟲可以自動獲取互聯網上…

    編程 2025-04-29
  • Vb運行程序的三種方法

    VB是一種非常實用的編程工具,它可以被用於開發各種不同的應用程序,從簡單的計算器到更複雜的商業軟體。在VB中,有許多不同的方法可以運行程序,包括編譯器、發布程序以及命令行。在本文中…

    編程 2025-04-29
  • Python一元二次方程求解程序

    本文將詳細闡述Python一元二次方程求解程序的相關知識,為讀者提供全面的程序設計思路和操作方法。 一、方程求解 首先,我們需要了解一元二次方程的求解方法。一元二次方程可以寫作: …

    編程 2025-04-29
  • 使用axios獲取返回圖片

    使用axios獲取返回圖片是Web開發中很常見的需求。本文將介紹如何使用axios獲取返回圖片,並從多個方面進行詳細闡述。 一、安裝axios 使用axios獲取返回圖片前,首先需…

    編程 2025-04-29

發表回復

登錄後才能評論