度々質問します。
ブラウザに表示させたイメージ画像(JPEG)を印刷した所、印刷できま
せんでした。
ちょうど他の方も印刷が出来ないと言うことで、ご質問されていまして、
参考になるURLにジャンプして色々見たのですが、正直よくわかりません。
本にもちょうど載っていたのですが、的外れな事が書かれているため、
参考にもなりません。
以下のソースは最初にA1.jpgを表示させ、その後「画像を変更」ボタンを
押すとB2.jpgに画像が変更されるものです。
やりたいのは、ボタンをもう一つ(印刷ボタン)追加して、そのボタンが
押された時に画像が印刷されるようにしたいんです。
基本的に画像のみを印刷したいと言う単純明快な形にしたいんです。
それで出来たらバカにでもわかるくらい簡単に書いていただけると助かります。
お手数ですがよろしくお願いします。
import java.applet.Applet;
import java.awt.*;
import java.awt.event.*;
import java.io.*;
import java.lang.*;
public class Sample extends Applet
{
Button Henko;
Image image;
Color bgcolor;
Font font;
public void init()
{
setLayout(null);
bgcolor = new Color(240,248,255);
setBackground(bgcolor);
setForeground(Color.black);
font = new Font("Serif",Font.PLAIN,18);
image = getImage(getDocumentBase(),"A1.jpg");
Henko = new Button("画像を変更");
Henko.setFont(font);
Henko.setBounds(20,100,140,30);
add(Henko);
Henko.addActionListener(new Gazohenko());
}
public void paint(Graphics g){
g.drawImage(image,150,150,this);
}
public class Gazohenko implements ActionListener{
public void actionPerformed(ActionEvent e){
image = getImage(getDocumentBase(), "B2.jpg");
repaint();
}
}
}
No.1
- 回答日時:
そもそも、アプレットから(画像に限らず)印刷ってできるのでしょうかね?
アプレットってセキュリティ面で「危険かもしれないものは禁止する」という方針をとっていたと思います。ローカルファイルにアクセスできないのもそのためです。アプレットがプリンタにアクセスできると、ひたすらデータを送り続けてマシンをアップアップさせるアプレットを作ることも可能になりそうなので、先の方針からすると禁止されていても不思議じゃないように思います。
No.2
- 回答日時:
ちょっと調べてみたら不可能ではないらしいです。
参考URLから「印刷 - print」を探してください。
http://java-house.etl.go.jp/ml/archive/j-h-b/019 …
が直接的かな。。。
参考URL:http://java-house.etl.go.jp/ml/topics/
この回答への補足
教えていただいたURLにジャンプして、それと同じような感じで、
フレームの中にソースを記述しました。
それで無事コンパイルも出来ましたが、実行しても全く無反応です。
何がいけないんでしょうか?
印刷のメソッドを記述したのに、印刷が出来ません。
class Frame extends Frame{
public Frame(){
super("Print");
PrintJob printjob = getToolkit().getPrintJob(this,"Print", null);
if(printjob != null){
Graphics g = printjob.getGraphics();
this.printAll(g);
g.dispose();
printjob.end();
System.exit(0);
}
}
public void paint(Graphics g){
g.drawImage(image,50,250,this);
}
}
No.3ベストアンサー
- 回答日時:
>実行しても全く無反応です。
>何がいけないんでしょうか?
>印刷のメソッドを記述したのに、印刷が出来ません。
とのことですが、どこまで上手く行って、どこで上手く行っていないのか位は分かりませんか?
デバッガの出力とか、JavaConsoleとか。ついでに環境も教えてください。
この回答への補足
基本的に処理事態はうまく流れています。どこかで止まってはないみたいです。
メインのプログラムにはボタンが二つあります。「データ表示」と「印刷」です。
二つのボタンは押された後の処理はほぼ同じです。「データ表示」は取得した
データと画像をフレームに表示する。「印刷」はデータ表示ボタンと同じく、
取得したデータと画像をフレームに表示させ、印刷し、その後フレームを閉じ
ると言う流れです。
今まででもプログラム中にどこかいけない所があると、そこを基点にプログラ
ムが一切動かないのですが、このプログラムはきちんと処理が流れます。
ただ印刷がされません。
つまり印刷ボタンを押し、フレームが一瞬表示され、その後フレームが閉じます。
その間の印刷と言うイベントが発生しません。
「if(printjob != null){」というIf文をコメントにして必ず印刷メソッドが
流れるようにしてもだめでした。
それでデバッグをやってみたのですが、今までやった事ないので、本を見な
がらやっていたのですが、全く意味がわからず、何が動いているのかが見え
ないです。
その為、どこがいけないのか?などの調査が出来ません。
とりあえず使い方をこれから色々探してみたいと思います。
それで以下のものはJAVAコンソールです。
一通り実行してみました。正直よく意味がわかりません。
これで何かわかるのでしょうか?
==============================================
? ヘルプ
c クリア
f ファイナライザの実行
g ガーベジ収集
m メモリ使用状況
q 終了
t スレッド一覧 list
==============================================
f実行
終了しています... 完了
g実行
ガーベジを収集しています... 完了
t実行
重要性 5 AWT-EventQueue-0
重要性 5 AWT-Windows
重要性 5 main
重要性 6 thread applet-fuji.class
重要性 6 TaskManager notify thread
重要性 6 Global Task Manager Thread #0
重要性 6 Global Task Manager Thread #1
※補足に書いたソースではSampleでしたが、実際記述している
プログラム名はfujiです。
環境ですが、的外れかもしれませんがとりあえず一通り書きます。
OS Win95
IE Ver5.5
JDK Ver1.3
開発ソフト 特に使用していません。エディターでプログラムを記述
お手数ですがよろしくお願いします。
色々やりましが、結局出来ませんでした。
やり方を変えて、ブラウザから印刷できるようJavaScriptでやることに
しました。
色々ご迷惑をおかけしました。そしてありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- HTML・CSS CSSが効かずどのように指定すれば良いか分からないのでアドバイスお願い致します 2 2023/06/07 12:25
- JavaScript clear機能を失わずにファイルアップロード機能を作成したい 3 2023/06/10 16:12
- Java java 入力 3 4 3 出力 ABC DEFG HIJ このようなプログラムの書き方を教えてくだ 2 2022/07/15 14:18
- HTML・CSS ボタンをクリックした時に、入力フォームのすぐ下部に、「入力欄が空白です」というテキストメッセージが表 1 2022/04/27 16:25
- JavaScript html5に変えるとスライドショーが消えてしまった。 3 2022/03/26 19:53
- HTML・CSS ヘッダーの画像にメインエリアがかぶってしまいます 1 2022/11/28 14:06
- JavaScript 入力フォームの javascript で メールアドレスの正規チェックをを行い、ボタンをクリックして 2 2022/04/27 16:06
- HTML・CSS 書籍を見つつサイト造りの練習をしているのですが、見た目が一致しません 2 2022/11/28 15:00
- HTML・CSS CSSでサイトの背景に画像を組み込みたいのですが反映されません 2 2022/11/22 16:21
- PDF 画像調整してスクショし保存した画像を印刷する方法 1 2022/03/31 18:42
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
eclipseに記述したjavaファイル...
-
アルファベットのソート
-
フレームの×ボタンを押しても閉...
-
javaの課題でコンパイルエラー...
-
「例外 *** は対応する try 文...
-
JavaMailについて
-
<forEach> 内で供給された "ite...
-
ファイル名を動的に生成したい
-
干支の計算で。。。
-
ループ処理の際、最後だけ","を...
-
C言語のポインターに関する警告
-
System.out.printlnの意味がよ...
-
Javaで改行などが出来ないのです。
-
System.err. printlnとSystem.o...
-
Java配列でNullPointerExceptio...
-
プログラミングの問題です。大...
-
変数を動的に作るには?
-
javaで質問です。 文字列2023/2...
-
VBAで配列の計算
-
JSPでImportエラーになります
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
eclipseに記述したjavaファイル...
-
「例外 *** は対応する try 文...
-
ColabでのPytorchのエラー
-
Javaを使ってデジタル時計を作...
-
<forEach> 内で供給された "ite...
-
文字列を数式に
-
importするには java.io.*; imp...
-
python OpenPyXLを使って出力結...
-
Selenium IDEでexportしたコー...
-
シャットダウンフックが呼ばれない
-
Java3Dで横置き円筒体の円筒中...
-
Javaで常駐するソフトを作って...
-
生年月日と今日の日付から年齢...
-
Javaを使用して定時送信をしたい
-
干支の計算で。。。
-
Java での グローバルIP取得
-
GridBagLayoutについての質問
-
ファイル名を動的に生成したい
-
HTMLでのTableタグデータ取得方法
-
importとextendsの用い方の違い...
おすすめ情報