サーバーから ImageIcon オブジェクトを送受信する場所を作成してjava rmi based application
います... (画像はサーバーの別の URL に保存されます)
関数には次のものが含まれます....
1. Getting the image from the server at first....(on button press A)
2. Replacing it with a image file in the client[optional]....(on button press B)
3. Remove the image with a default image[optional]....(on button press C)
4. Sending it back to the Server....................(On button press D).....
ここでは、画像がjlabel
呼び出されて表示されますimg_label
私が使用したコードは次のとおりです.....
使用される変数
java.awt.Image img;
javax.swing.ImageIcon CurrentImageIcon;
javax.swing.ImageIcon DefaultImageIcon;
// CurrentImageIcon contains the image to be displayed in the img_label....
// img is used for copying as well for scaling......
// DefaultImageIcon holds the default Image......
ボタンを押すとA
img = temp.getImage();
CurrentImageIcon = new ImageIcon(img);
// Assuming temp holds the ImageIcon taken from the server.......
img=img.getScaledInstance(83,85 , Image.SCALE_DEFAULT);
img_label.setIcon(new ImageIcon(img));
img_label.revalidate();
img_label.repaint();
ボタンを押すとB
String url_text = jTextField.getText(); // taking the url frm the field.....
CurrentImageIcon = new ImageIcon(url_text);
img=CurrentImageIcon.getImage();
img=img.getScaledInstance(83,85 , Image.SCALE_DEFAULT);
img_label.setIcon(new ImageIcon(img));
img_label.revalidate();
img_label.repaint();
ボタンを押すと C
img = DefaultImageIcon.getImage();
CurrentImageIcon = new ImageIcon(img);
img=img.getScaledInstance(83,85 , Image.SCALE_DEFAULT);
img_label.setIcon(new ImageIcon(img));
img_label.revalidate();
img_label.repaint();
ボタンを押すと D
// ImagetoSend is an ImageIcon to be sent to the Server.....
ImagetoSend = CurrentImageIcon;
CurrentImageIcon = null;
今、私が得ている問題は奇妙なものです...... このボタンをクリックすると、再描画で必要に応じて画像が埋め込まれます........
But when i download the recently uploaded image next time on Button press A....it is displayed either magnified or reduced to size even though i included the getScaledInstance method....
このような...
私が扱っている画像はjpg画像です....サーバーディレクトリで画像を確認しました...クライアントからサーバーにアップロードされたファイルのサイズは変更されていません。しかし、ダウンロードしてjlabelに埋め込むと、変更が観察されます... 誰でもこの問題を解決するのを手伝ってくれますか...??