導航:首頁 > 編程語言 > java滾動圖片

java滾動圖片

發布時間:2022-11-28 02:21:00

java中怎麼實現背景圖片滾動

importjavax.swing.ImageIcon;

importjavax.swing.JFrame;

importjavax.swing.JLabel;

importjavax.swing.JPanel;

{

publicMainJFrame(){

//設置標題

super("JFram設置背景圖片(Cannel_2020)");

//設置大小

setSize(500,400);

//設置位置

setLocation(200,50);

//背景圖片的路徑。(相對路徑或者絕對路徑。本例圖片放於"java項目名"的文件下)

Stringpath="background.jpg";

//背景圖片

ImageIconbackground=newImageIcon(path);

//把背景圖片顯示在一個標簽裡面

JLabellabel=newJLabel(background);

//把標簽的大小位置設置為圖片剛好填充整個面板

label.setBounds(0,0,this.getWidth(),this.getHeight());

//把內容窗格轉化為JPanel,否則不能用方法setOpaque()來使內容窗格透明

JPanelimagePanel=(JPanel)this.getContentPane();

imagePanel.setOpaque(false);

//把背景圖片添加到分層窗格的最底層作為背景

this.getLayeredPane().add(label,newInteger(Integer.MIN_VALUE));

//設置可見

setVisible(true);

//點關閉按鈕時退出

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

}

publicstaticvoidmain(String[]args){

newMainJFrame();

}

}

運行如下

㈡ 用java做游戲,怎麼讓背景圖片滾動啊

首先需要一個大圖片bg,長度為bgWeight,它作為背景,相當於一個首尾相連的畫卷,人物走動的話,它就滾動

int pos=0;//它記錄窗口坐標(左邊)在bg的偏移;
pos=(pos+moveSpeed)%bgWeight;
然後根據pos的位置繪制背景,有可能你是繪制 bg的尾部+bg的頭部 來形成完整的背景
經典代碼:
public Ribbon(int movS, BufferedImage im) {
bim = im; //im就是背景圖片
xImHead = 0;//當前游戲窗口左邊在背景圖片中的坐標
pWidth = GamePanel.WIDTH;游戲窗口寬
pHeight = GamePanel.HEIGHT;游戲窗口高
width = bim.getWidth();背景圖片寬度
moveSize = movS;移動距離
}

public void draw(Graphics g) /* Consider 5 cases:考慮5種情況
// when xImHead == 0, draw only the im head
//when xImHead > 0, draw the im tail and im head, or only the im tail.
//when xImHead < 0, draw the im tail, or the im tail and im head

// xImHead can range between -width to width (exclusive)
*/ {
if (xImHead == 0) // draw im head at (0,0)//情況1
{
drawRibbon(g, bim, 0, pWidth, 0, pWidth);
}
else if ((xImHead > 0) && (xImHead < pWidth)) {//情況2
// draw im tail at (0,0) and im head at (xImHead,0)
drawRibbon(g, bim, 0, xImHead, width - xImHead, width); // im tail
drawRibbon(g, bim, xImHead, pWidth, 0, pWidth - xImHead); // im head
}
else if (xImHead >= pWidth) // only draw im tail at (0,0),情況3
{
drawRibbon(g, bim, 0, pWidth,
width - xImHead, width - xImHead + pWidth); // im tail
}
else if ((xImHead < 0) && (xImHead >= pWidth - width)) {//情況4
drawRibbon(g, bim, 0, pWidth, -xImHead, pWidth - xImHead); // im body
}
else if (xImHead < pWidth - width) { //情況5
// draw im tail at (0,0) and im head at (width+xImHead,0)
drawRibbon(g, bim, 0, width + xImHead, -xImHead, width); // im tail
drawRibbon(g, bim, width + xImHead, pWidth,
0, pWidth - width - xImHead); // im head
}
} // end of display()

累死,看看這里,很詳細 http://wenku..com/view/85d254ce0508763231121260.html
看完還不會找我!

㈢ java 滾動顯示圖片局部

參考一下:

import org.jawin.COMException;
import org.jawin.FuncPtr;
import org.jawin.ReturnFlags;
import org.jawin.io.LittleEndianInputStream;
import org.jawin.io.LittleEndianOutputStream;
import org.jawin.io.NakedByteStream;

FuncPtr fp = new FuncPtr("bin\\CallCOMUnitTestD.DLL", "SkipDefaultedArg");
NakedByteStream nbs = new NakedByteStream();
LittleEndianOutputStream leos = new LittleEndianOutputStream(nbs);
leos.writeInt(n);
byte[] result = GenericStub.win32Invoke(fp.getPeer(),"kI:I:", 8, 4, nbs.getInternalBuffer(), null);
return StructConverter.bytesIntoInt(result, 0);

㈣ 通過javasccript實現圖片滾動效果

直接給你一段簡單的代碼,不懂再問
<html>
<head>
<title>圖片滾動 </title>
<style>
#div1
{position:relative;width:650px;height:210px;overflow:hidden;
}
#div2{position:absolute;}
li{float:left;list-style-type:none;padding:5px;}
img{border:none;}
#div2 li a:hover{top:-10px;}
a{position:relative;}
</style>
<script>
window.onload=function()
{
var odiv2=document.getElementById('div2');
var ali=odiv2.getElementsByTagName('li');
var aspeed=-5;
var timer=null;
odiv2.innerHTML+=odiv2.innerHTML;
odiv2.style.width=ali[0].offsetWidth*ali.length+'px';
odiv2.onmouseover=function(){clearInterval(timer);};
function a()
{
timer=setInterval(function()
{
odiv2.style.left=odiv2.offsetLeft+aspeed+'px';
if (odiv2.offsetLeft<-odiv2.offsetWidth/2)
{
odiv2.style.left='0px';
}
},30);};
odiv2.onmouseout=a;
a();
}
</script>
</head>
<body>
<div id='div1'>
<div id='div2'>
<li><a href=""><img src="1.jpg" /></a></li>
<li><a href=""><img src="2.jpg" /></a></li>
<li><a href=""><img src="3.jpg" /></a></li>
<li><a href=""><img src="4.jpg" /></a></li>
</div>
</div>
</body>
</html>
希望能解決您的問題。

㈤ java 如何在界面上顯示多張圖片並實現滾動條拖動.

importorg.jawin.COMException;
importorg.jawin.FuncPtr;
importorg.jawin.ReturnFlags;
importorg.jawin.io.LittleEndianInputStream;
importorg.jawin.io.LittleEndianOutputStream;
importorg.jawin.io.NakedByteStream;

FuncPtrfp=newFuncPtr("bin\CallCOMUnitTestD.DLL","SkipDefaultedArg");
NakedByteStreamnbs=newNakedByteStream();
LittleEndianOutputStreamleos=newLittleEndianOutputStream(nbs);
leos.writeInt(n);
byte[]result=GenericStub.win32Invoke(fp.getPeer(),"kI:I:",8,4,nbs.getInternalBuffer(),null);
returnStructConverter.bytesIntoInt(result,0);

㈥ java窗體飛機大戰兩張背景圖片滾動循環如何實現,代碼

package Task1;
//首先要調用需要的包
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class myFrame extends Frame //窗體類,繼承Frame
{
CardLayout cl=new CardLayout(); //定義卡片布局
public void initial() //創建一個窗體
{
this.setBounds(500, 300, 300, 200); //窗體的大小和坐標
this.setTitle("圖片自動瀏覽"); //窗體主題
this.setLayout(cl); //窗體採用的布局方式,上面已經定義了卡片布局,所以這里直接調用即可
this.setVisible(true); //顯示窗體

JButton[] jbtn=new JButton[4]; //創建添加圖片的數組,有幾張圖,數據成員就有幾個
for(int i=0;i<4;i++) //我這里是用循環來添加圖片,所以上面要創建數組,當然分開一個一個的添加圖片也是可以的
{
jbtn[i]=new JButton();
jbtn[i].setIcon(new ImageIcon("c://"+i+".jpg")); //這是所要添加圖片的地址
this.add(jbtn[i],i+""); //顯示
}
while(true) //關鍵的時候到了,如何讓圖片滾動循環,我這里是用了while循環來寫的
{
cl.next(this); //圖片的切換,下一張
try{Thread.sleep(3000);} //切換的間隔時間為3秒,也就是3000毫秒
catch(Exception e){}
}
}
public myFrame() //這是固定方法,窗體程序必須寫,少了它整個程序完蛋,所以不多做解釋
{
initial();
}
}

public class Test { //Test類,我這里是專門寫主函數的
public static void main(String[] args) //主函數main
{
myFrame mf=new myFrame(); //實例化調用窗體類myFrame
}
}
ok,完成。程序復制過去以後可能會報錯,並不是我寫錯了,我的有些包名或者類名還有大括弧可能與你的不符合,你需要把細節方面的東西再做調試一下,然後在運行。
望採納😘謝謝!

㈦ JAVA用ScrollBar控制JLabel圖片滾動

用JPanel的drawImage即可、然後添加到父容器中添加滾動條即可。。。

㈧ 滾動圖片java代碼問題

我給你發一個圖片無縫滾動的例子,把圖片的路徑改改就能運行了:
<html>
<head>
<title>marquee</title>
<style>
#marq {
width:500px;
height:100px;
border:1px solid red;
overflow:hidden;
}
#marq img{
width:100px;
height:70px;
}
</style>
</head>
<body>
<div id="marq">
<table>
<tr>
<td id="bd">
<table>
<tr>
<td><img src="images/1.jpg"/></td>
<td><img src="images/2.jpg"/></td>
<td><img src="images/2.jpg"/></td>
<td><img src="images/2.jpg"/></td>
<td><img src="images/2.jpg"/></td>
<td><img src="images/2.jpg"/></td>
<td><img src="images/3.jpg"/></td>
</tr>
</table>
</td>
<td id="shadow">
</td>
</tr>
</table>
</div>
<div id="sh"></div>
</body>
<script>
var marq = document.getElementById("marq");
var bd = document.getElementById("bd");
var shadow = document.getElementById("shadow");
var sh = document.getElementById("sh");
shadow.innerHTML = bd.innerHTML;
function mq(){
if (bd.clientWidth - marq.scrollLeft == 0)
marq.scrollLeft = 0
else
marq.scrollLeft++;
sh.innerHTML = "bd width: "+bd.clientWidth+" scrollLeft:"+marq.scrollLeft;
setTimeout("mq()",10);
}
mq();
</script>
</html>

㈨ java : 怎樣實現在一個窗口中向下滾動畫圖(就像文本區那樣能在內容超出窗口范圍時向下拉動)

可以把你要顯示的內容放到一個div層中,設置以下div顯示的長寬
下面給出各例子,自己復制下來試試吧
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
</HEAD>

<BODY>
<div style="overflow-y:auto;overflow-x:hidden;width:100%;height:100px">
1
1
1
1
1

1
1
1
1
1
1
</div>
</BODY>
</HTML>

㈩ java圖片滾動循環為什麼不循環只滾動一次

function Marquee()
{
<!--if(demo.scrollLeft<=0)
<!-- demo.scrollLeft+=demo2.offsetWidth
<!-- else
<!-- {
demo.scrollLeft++ //方向 -- 為右滾動
<!-- }
}
把判斷條件刪除了只能循環兩次....

閱讀全文

與java滾動圖片相關的資料

熱點內容
領英轉型app哪個好用 瀏覽:941
壓縮軟體的圖標 瀏覽:95
賣鞋哪個app是真的 瀏覽:467
python迭代是累計嗎 瀏覽:419
程序員哪些平台接私活 瀏覽:173
單片機充電電路原理圖 瀏覽:1000
android軟體雲伺服器地址 瀏覽:213
如何用伺服器做內網穿透服務 瀏覽:401
oracle加密表空間重置密碼 瀏覽:302
mdk編譯後目標文件 瀏覽:615
老人動手解壓 瀏覽:720
小米sd卡解壓 瀏覽:996
程序員那麼可愛陸漓替老袁說情 瀏覽:28
當女程序員遇見問題 瀏覽:746
32位編譯器什麼意思 瀏覽:355
php多參數函數 瀏覽:17
通達信板塊動作源碼 瀏覽:751
matlab完全自學一本通pdf 瀏覽:251
php源碼本地安裝 瀏覽:961
伺服器怎麼用不會斷電 瀏覽:303