No.2ベストアンサー
- 回答日時:
>画像のサイズに合わせてフレームの大きさを調整する方法
>(一瞬だけ表示するボタンをその下に設置したい)
>(現在はBoderLayoutを用いている)
まず、BorderLayoutなどのレイアウトマネージャを使っている場合、配置や大きさなどはレイアウトマネージャが管理するのでプログラマが考えている通りにはならない、という点を頭に入れておく必要があります。
完全に自由にしたければ、レイアウトマネージャをnullに設定し、それからBufferedImageのgetWidth/getHeightで大きさを取得してFrameの大きさを調整し描画する・・といった処理をすべて自分で組み込めばよいでしょう。
レイアウトマネージャを活かした場合には、画像を1つのコンポーネントとして組み込み、再レイアウトさせる必要があるでしょう。例えばですが、SwingならばJPanel、AWTならばCanvasを継承したクラスを定義し、それでprefferedSize、minimumSize、maximumSize等を設定して画像表示コンポーネントを用意しておきます。これを組み込んで、再レイアウト時にpackを行えば大きさは再調整されます。このへんは、けっこうややこしい部分なので、AWT/Swingの解説書などで詳しく調べてみた方がよいかと思います。
>イベントリスナーを用いてボタンを押したときに
>一瞬だけ画像を表示させたいです。
どのように表示をさせているのかわからないのですが、例えば、ボタンのActionListenerで、
・getGraphicsでGraphicsを得る。
・[Graphics].drawImageでイメージを描画。
・repaintで初期化(これで元の状態、すなわち消える)
・Graphicsを破棄
・・といった形で一瞬だけ描画はできると思います。ほんとに一瞬なので、若干でも時間調整をしたければ、Thread.sleepなどでスレッドを一時的に停止するといった処理が必要でしょう。このあたりは、スレッドについての説明などを調べてみるとわかるかと思います。
No.3
- 回答日時:
こんにちは。
>画像のサイズに合わせてフレームの大きさを調整する方法
>(一瞬だけ表示するボタンをその下に設置したい)
>(現在はBoderLayoutを用いている)
こんなのはどうでしょう?
1.画像表示用のコンポーネントとしてCanvasを継承したコンポーネントを作る。
(内部にImageを保持しつつ、表示したり、しなかったりできるように作っておく)
2.その表示用コンポーネントで、getPreferredSize()メソッドをオーバーライドし、表示する画像の大きさと同じサイズの推奨サイズを返すように作っておく。
3.フレームのレイアウトにBorderLayoutか何かを設定して置き、packメソッドを呼び、フレームをちょうどよい大きさにする。
>イベントリスナーを用いてボタンを押したときに
>一瞬だけ画像を表示させたいです。
これは、AWTを使っているのならjava.util.Timer、Swingならjavax.swing.Timerあたりを使うのが一番簡単なのではないでしょうか。
No.1
- 回答日時:
>JAVAアプリケーションで画像(jpeg)を一瞬だけ表示させたいのですが
>どのようにすればよいでしょうか?
ほとんど素人ということですが、まずJavaアプリケーションの作り方はわかりますか?
また、画像の読み込み方、表示の仕方はわかるでしょうか?
それらがわかった上で、「一瞬だけ」表示させる方法がわからないのか、そもそもJavaアプリケーションの作り方からまるっきりわからないのか、そのあたりがわからないのでなんともいえないのですが・・。
まるっきりわからないのであれば、画像うんぬんの前に、Javaの基本を一通り勉強する方が結局近道になるでしょう。Javaの入門書はたくさんありますし、ここでも検索すればおすすめの書籍が山ほど見つかるはずです。
基本はわかっているということでしたら、どのあたりまでわかっていてどの部分がわからないか、もう少し具体的に書いていただけませんか?
この回答への補足
画像を表示するところまではできました。
しかしながら
画像のサイズに合わせてフレームの大きさを調整する方法
(一瞬だけ表示するボタンをその下に設置したい)
(現在はBoderLayoutを用いている)
や
イベントリスナーを用いてボタンを押したときに
一瞬だけ画像を表示させたいです。
説明不足名部分が多々あり申し訳ありませんでした。
回答よろしくお願いします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 画像編集・動画編集・音楽編集 jpgが拡張子の画像を探しています 2 2023/04/06 10:03
- 一眼レフカメラ カメラ選び 6 2022/09/02 12:54
- その他(クラウドサービス・オンラインストレージ) データ保存先をOneDriveからPC本体に変えたらDocumentとPictureフォルダが消えた 1 2023/07/30 15:48
- Visual Basic(VBA) ChatGPTに作らせたい Excel VBA 1 2023/04/05 19:56
- Excel(エクセル) エクセル、画像ファイル名の書かれたセル(複数個所)に画像を一括で表示させる方法 1 2023/04/19 00:19
- Windows 10 フォルダ内の全ての画像を矢印キーでスライドできるようにしたい 1 2022/10/21 12:53
- 防犯カメラ・監視カメラ・小型カメラ VHSを高画質な動画ファイルにしたいです。 3 2022/05/06 12:08
- HTML・CSS <a>リンクが飛ばない・・ パソコン初心者です 、本を見ながらHTMLで<a>でコードをかいたのです 6 2022/07/30 20:21
- 画像編集・動画編集・音楽編集 エクスプローラー サムネイル表示されない 1 2022/12/22 10:14
- Visual Basic(VBA) VBAリストボックスで選択した後 5 2022/11/07 17:50
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VB.NETでフォーム上にExcelのよ...
-
エクセルVBAで、条件に一致する...
-
「エンクロージング型」と「外...
-
EXCEL VBAにて動的にCheckBOXを...
-
変数名の付け方
-
同じクラスにならない確率を教...
-
「タイプ初期化子が例外をスロ...
-
インスタンス参照でアクセスで...
-
配列の重複する値とその個数を...
-
VBAでvlookup関数から、別シー...
-
VB.NET フォーム上に描いたグ...
-
フォームのCheck boxとOLEObjec...
-
VBスクリプトでテキストファイ...
-
String a = "a"; と String b =...
-
VBAからノーツを起動
-
VBA コピーが出来ません…!
-
「インスタンス」の意味をわか...
-
パワーポイントのVBAでテキスト...
-
マイクロSDカード購入しようと...
-
エクセルVBAでのwitheventsにつ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VB.NETでフォーム上にExcelのよ...
-
VB.NETでMSComm が追加できず?
-
ファイル保存先のダイアログが...
-
requestFocusについて
-
Visual Basic 2010を使ってRS-2...
-
ツールボックスのような折りたたみ
-
C#で設定時刻到来時にイベント...
-
[delphi] 変数を利用してコンポ...
-
java gui のイベント処理が重い
-
VBSでCDトレイのオープン/ク...
-
ゲーム画面(JFrame)のサイズ変...
-
VS2010デザイナーの読込エラー...
-
コンポーネント
-
delphi stringgrid
-
borland C++ Builder 6でSPComm...
-
JScrollPane上のJTableの再描画
-
画像を一瞬だけ表示する。
-
パネルのフォーカス移動
-
フレーム上のコンポーネントの...
-
アクティブなTextFiel...
おすすめ情報