導航:首頁 > 編程語言 > imageviewjava

imageviewjava

發布時間:2023-08-07 01:31:23

Ⅰ 怎樣在java里用URL引入圖片引入圖片

URL對象中前而幾個方法都非常容易理解,而該對象提供的openStream()可以讀取該 URL資源的InputStream,通過該方法可以非常方便地讀取遠程資源。

下面的程序示範如何通過URL類讀取遠程資源:

1)只顯示網路圖片


1)只顯示網路圖片


引用圖片處理的java類:

packagejun.king.urlgetimage;

importjava.io.InputStream;

importjava.net.URL;

importandroid.app.Activity;

importandroid.graphics.Bitmap;

importandroid.graphics.BitmapFactory;

importandroid.os.Bundle;

importandroid.os.Handler;

importandroid.os.Message;

importandroid.view.Menu;

importandroid.view.MenuItem;

importandroid.widget.ImageView;

{

Bitmapbitmap;

ImageViewimageview;

Handlerhandler=newHandler(){

@Override

publicvoidhandleMessage(Messagemsg){

if(msg.what==0x9527){

//顯示從網上下載的圖片

imageview.setImageBitmap(bitmap);

}

}

};

@Override

protectedvoidonCreate(BundlesavedInstanceState){

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

imageview=(ImageView)findViewById(R.id.imageView1);

//創建並啟動一個新線程用於從網路上下載圖片

newThread(){

@Override

publicvoidrun(){

try{

//創建一個url對象

URLurl=newURL("http://www..com/img/bdlogo.png");

//打開URL對應的資源輸入流

InputStreamis=url.openStream();

//從InputStream流中解析出圖片

bitmap=BitmapFactory.decodeStream(is);

//imageview.setImageBitmap(bitmap);

//發送消息,通知UI組件顯示圖片

handler.sendEmptyMessage(0x9527);

//關閉輸入流

is.close();

}catch(Exceptione){

e.printStackTrace();

}

}

}.start();

}

@Override

(Menumenu){

//Inflatethemenu;.

getMenuInflater().inflate(R.menu.main,menu);

returntrue;

}

@Override

(MenuItemitem){

//Handleactionbaritemclickshere.Theactionbarwill

///Upbutton,solong

//.xml.

intid=item.getItemId();

if(id==R.id.action_settings){

returntrue;

}

returnsuper.onOptionsItemSelected(item);

}

}

Ⅱ Java如何讓多個圖片都按照一定軌跡下落

圖片的位移(下落),可以通過修改圖片的x,y坐標來實現, 在Swing/Html中,我們可以使用Timer定時(比如每隔100毫秒)去修改圖片的x,y坐標即可實現,

多個圖片都按照一定的軌跡移動,那都按照自己的軌跡的演算法,去定時修改x,y坐標即可.

JavaFX是java先進的圖形界面框架, 裡面有3D和各種動畫, 所以按照軌跡移動,都能輕松實現

importjavafx.animation.Animation;
importjavafx.animation.Interpolator;
importjavafx.animation.PathTransition;
importjavafx.animation.RotateTransition;
importjavafx.application.Application;
importjavafx.geometry.Insets;
importjavafx.scene.Group;
importjavafx.scene.Scene;
importjavafx.scene.control.Button;
importjavafx.scene.image.ImageView;
importjavafx.scene.layout.HBox;
importjavafx.scene.shape.MoveTo;
importjavafx.scene.shape.Path;
importjavafx.scene.shape.QuadCurveTo;
importjavafx.stage.Stage;
importjavafx.util.Duration;

{
publicstaticvoidmain(String[]args){
launch(args);
}

@Override
publicvoidstart(StageprimaryStage)throwsException{
ImageViewimv=newImageView(getClass().getResource("ball.png").toExternalForm());
Pathpath=newPath();//路徑;運動軌跡
MoveTomt=newMoveTo(20,50);
QuadCurveToquadTo2=newQuadCurveTo(175,190,350,30);
path.getElements().addAll(mt,quadTo2);

HBoxhbox=newHBox(10);

ButtonbtnStart=newButton("開始");
ButtonbtnPause=newButton("暫停");
ButtonbtnResume=newButton("繼續");
ButtonbtnStop=newButton("結束");
hbox.getChildren().addAll(btnStart,btnPause,btnResume,btnStop);
hbox.setPadding(newInsets(20));
hbox.setLayoutX(80);
hbox.setLayoutY(230);
Grouproot=newGroup();

root.getChildren().addAll(imv,path,hbox);//不添加path.就可以不顯示path了

Scenescene=newScene(root,430,300);

primaryStage.setTitle("JavaFX");
primaryStage.setScene(scene);
primaryStage.show();
//旋轉動畫設置
RotateTransitionrt=newRotateTransition(Duration.millis(1000),imv);
rt.setInterpolator(Interpolator.LINEAR);
rt.setFromAngle(0);
rt.setToAngle(360);
rt.setCycleCount(Animation.INDEFINITE);
rt.play();


//路徑動畫設置
PathTransitionpt=newPathTransition(Duration.millis(800),path,imv);//路徑動畫
pt.setCycleCount(Animation.INDEFINITE);
pt.setAutoReverse(true);
btnStart.setOnAction(e->{
pt.playFromStart();//從頭開始播放

});

//----按鈕的響應設置---
btnPause.setOnAction(e->{
pt.pause();
});
btnResume.setOnAction(e->{
pt.play();//播放
});
btnStop.setOnAction(e->{
pt.jumpTo(newDuration(0));//跳到第0秒處
pt.stop();
});
}
}

閱讀全文

與imageviewjava相關的資料

熱點內容
外賣員轉型做程序員 瀏覽:925
看房用什麼app准 瀏覽:155
雞蛋解壓玩具測評 瀏覽:705
阿里雲發布arm伺服器晶元 瀏覽:754
對加密貨幣平台的態度 瀏覽:373
刺客信條pdf 瀏覽:451
湛江頭條程序員 瀏覽:160
裝上加密狗就死機 瀏覽:925
windows程序員轉linux 瀏覽:568
androidusb驅動xp 瀏覽:945
單片機的數字電壓表設計 瀏覽:790
成功連接伺服器是什麼意思 瀏覽:892
如何審定伺服器訪問許可權 瀏覽:687
姜梓童陳一鳴程序員 瀏覽:921
青島程序員駐場開發哪家好 瀏覽:474
stc89c52單片機介紹 瀏覽:21
linux編譯路徑比 瀏覽:970
程序員上班自己帶電腦 瀏覽:495
如何在伺服器上搭建svn伺服器 瀏覽:108
刪除命令提示符 瀏覽:949