-PR-
解決
済み

立て続けで申し訳在りません(JOptionPane.showMessageDialog)

  • すぐに回答を!
  • 質問No.21240
  • 閲覧数336
  • ありがとう数7
  • 気になる数0
  • 回答数3
  • コメント数0

お礼率 50% (3/6)

連続投稿申し訳在りません。

JOptionPaneクラスで表示出来る
ダイアログなのですが、これは
手動でリサイズが出来てしまうのですね。

おそらく、Compponentクラスの
setSizeで初期サイズを取得して、
resizeかsetBoundsでリサイズ時の
処理を行っていると思うのですが、
これはそれぞれのメソッドで値を入れているので
一瞬はサイズが変更されたのが見えてしまいそうです。

何処か簡単にリサイズ制御出来る
メソッドがありましたら教えて下さい。
通報する
  • 回答数3
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

質問者が選んだベストアンサー

  • 回答No.3
レベル9

ベストアンサー率 62% (48/77)

もうダイアログサイズを固定する方法は見つかりましたか?
一応このメソッドでサイズは固定出来そうだというものがありましたのでご紹介だけしておきます。

JFrame#setResizable ←フレームの場合
JDialog#setResizable ←ダイアログの場合

もしかするとJOptionPaneか、JDialogを継承して新たに
作る必要があるかもしれないとちょっと思いました。
もっとお詳しい方ならわかるかもしれませんね。
新たなことがわかりましたらまたここでお知らせできるかもしれません。
参考URLはオーバーロードとオーバーライドについての
簡単な解説が記載されています。
お礼コメント
Naocky

お礼率 50% (3/6)

何とかオーバーライドについて分かりました。
肝心のメソッドを見つけるのに苦労しましたが、
何とか出来るようになりました。
有難う御座います。
投稿日時 - 2000-12-26 11:29:08
-PR-
-PR-

その他の回答 (全2件)

  • 回答No.1
レベル9

ベストアンサー率 62% (48/77)

上記質問のみでは具体的に何を行いたいのかが見えませんので 補足をお願いいたします。 1.現在やりたいこと。 2.現在の問題点。 3.これまで行ってきた回避策。  (こうやったがだめだったとかここまでできたなど) 以上、宜しくお願いいたします。 ...続きを読む
上記質問のみでは具体的に何を行いたいのかが見えませんので
補足をお願いいたします。

1.現在やりたいこと。
2.現在の問題点。
3.これまで行ってきた回避策。
 (こうやったがだめだったとかここまでできたなど)

以上、宜しくお願いいたします。
補足コメント
Naocky

お礼率 50% (3/6)

では、一つずつ書かせて頂きます。

現在やりたい事とは
JOpetionクラスのDialog表示メソッドが
(showOptionDialog、showConfirmDialogなど)
リサイズ出来ないようにしたいのです。

ダイアログの表示は出来るのですが、
マウスの操作でダイアログの大きさを
変更出来てしまいます。これを制御したいのです。
(Frameオブジェクトで言う
resizable = falseと同様の事です)

回避策というか、今の時点では対策出来ていないのですが
調べてみると、どうやら親クラスであるComponentの
setSize、或いはsetBoundでサイズを設定している
らしいと言うことは分かったと言う所までです。

どちらかのメソッドをオーバーライドすれば
出来るかもしれないと思ったのですが
まだオーバーライドの概念をいまいち理解出来ていないので
ここで足踏みしている状態です。

何か分かりましたら教えてくださるとありがたいです。
よろしくお願いします
投稿日時 - 2000-12-22 15:56:08
  • 回答No.2
レベル10

ベストアンサー率 28% (42/146)

Javaはあまり詳しくはないですが。 (まして件のパッケージって何か知りません) オーバーライドは「メソッドの上書き」です。 上書きされたメソッドは、消えるわけではありませんが、 明示的に呼ばれない限り呼び出されません。 (優先順位が変わる、とでも言えばいいのかなぁ) それと、オーバーライドするのは軽少するときと決まってます。 そのクラスを継承して、そこでオーバーライドしてやれば ...続きを読む
Javaはあまり詳しくはないですが。
(まして件のパッケージって何か知りません)

オーバーライドは「メソッドの上書き」です。
上書きされたメソッドは、消えるわけではありませんが、
明示的に呼ばれない限り呼び出されません。
(優先順位が変わる、とでも言えばいいのかなぁ)
それと、オーバーライドするのは軽少するときと決まってます。

そのクラスを継承して、そこでオーバーライドしてやれば
いいんじゃないかなぁ、と思いますが。
お礼コメント
Naocky

お礼率 50% (3/6)

返事が遅れて申し訳ありません。
オーバーライドを試してみて、
何とか出来るようになりました。
有難う御座います。
投稿日時 - 2000-12-26 11:28:06
このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
こんな書き方もあるよ!この情報は知ってる?あなたの知識を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


いま みんなが気になるQ&A

関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ