• ベストアンサー

JOptionPaneから・・・

こんにちは。 JOptionPaneを使って画面でメッセージを出しています。 そこで質問があります。 画面AからJOptionPaneメッセージ呼び出し。 1.「了解」→画面Bへ 2.「取消し」→画面Aへ とはできないのでしょうか? いまいちやり方がわかりません。 よろしくお願いします。

noname#7237
noname#7237
  • Java
  • 回答数1
  • ありがとう数2

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

  • ベストアンサー
  • takaP-
  • ベストアンサー率79% (83/105)
回答No.1

これだけの情報では正確な解答は難しいです。 >JOptionPaneを使って画面でメッセージを出しています。 「了解」「取り消し」から推察して、javax.swing.JOptionPane#showConfirmDialog() を使っていると仮定します。 int option = JOptionPane.showConfirmDialog(parent,message,title,JOptionPane.OK_CANCEL_OPTION); これで、2つのボタンを持ったダイアログが表示されます。 そして、ユーザがどちらかのボタンを押した時点で、ダイアログは非表示になります。 この時、上記の option 変数に代入された値で、どのボタンが押されたのかは判断できます。 switch(option){ case JOptionPane.OK_OPTION : // OKの時の処理; break; case JOptionPane.CANCEL_OPTION : // キャンセルの時の処理; break; } OKの時の処理部分に。。。 >1.「了解」→画面Bへ を書けば良いし。 キャンセルの時の処理部部に。。 >2.「取消し」→画面Aへ を書けば良いのではないでしょうか。(この処理は省略できるかもしれませんけど。。。) その具体的な処理は、画面Aが何者なのか、画面Bが何者なのかが分からない事には説明のやりようが無いです。

noname#7237
質問者

お礼

うまくいかなくて散々悩んでいたんですが、JOptionPaneやJFrameで行ったところうまくいきました。 それらをカスタマイズしたクラスではうまくいかないので、カスタマイズしたクラスに問題があるようです。 どうもありがとうございました!

関連するQ&A

  • モーダルとスレッド

    JOptionPaneでダイアログを出力する直前に新しいスレッドを作っておき、 その中でバックグラウンド用処理を行いたいと思っています。 色々ためしたのですが、ダイアログの了解ボタンを押すまで新たに作った スレッド内のバックグラウンド処理もブロックされる様です。 (スレッドのプライオリティ等も変更してみました。) モーダル画面を起動するとその画面が終了するまで、そのプロセス内の 全てのスレッドがブロックされるという事なのでしょうか? (勿論、モーダル画面からの入力受付となるEventDispatchThreadは動いて いるのでしょうけど) もし、「そうである」ならば、JOptionPaneはあきらめて、モードレスダイアログ を作成しようと思いますし、「いや、こういう手段がある」というのなら それを教えてください。 以上、よろしくお願いします。

    • ベストアンサー
    • Java
  • PHPについて基本的なこと

    ですが PHPはクライアントから呼び出されたときのみサーバはその同じクライアントのみに実行結果を送るものなのでしょうか? 2人オンラインゲームを作るとなると Aさんの呼び出しによる実行結果をAさんとBさんに Bさんの呼び出しによる実行結果をBさんとAさんに 送らないといけません Aさんの呼び出しによる実行結果をAさんに Bさんの呼び出しによる実行結果をBさんに 送ることは通常のPHPの使い方ですから問題ないとして 問題は Aさんの呼び出しによる実行結果をBさんに Bさんの呼び出しによる実行結果をAさんに に送ることができるかと言うことです そのようにPHPはできていないのでしょうか?

    • ベストアンサー
    • PHP
  • ダイアログにおける改行

    JAVA で GUI プログラミングをしています. 今ダイアログを作っていて,ダイアログに表示させる メッセージが長すぎるため,改行で区切って2段のメッセージにしたいのですがうまくいきません. ダイアログのメッセージに改行を出力させる方法を 教えて下さい.お願いします. 私は以下のようなプログラムを作ってコンパイルできませんでした. JOptionPane.showMessageDialog(frame, "ここに改行を含むメッセージを" + \n + "入力します.","Help",JOptionPane.PLAIN_MESSAGE);

    • ベストアンサー
    • Java
  • データの受け渡しについて

    現在、出席票のプログラムを作っていて出てきた質問です。ただし私がJAVA初心者なため、質問もとても初歩的な部分だとは思いますが、どうぞよろしくお願いいたします。 このプログラムは2つのファイルから成り立たせたいと考えています。1つ(以下:DBTest_a)ではJAppletによってパスワードを入力する。もう2つ(以下:DBTest_b)ではDBTest_aで得たパスワードを受け取り、データベースに接続して各処理を行う(この処理内容もパスワードを表示させたウインドーで表示させたい)。というものです。 受け取るには、DBTest_aをメインにして、 str にパスワードを保持して、DBTest_bをDBTest_a内で呼び出して受け渡そうと考えました。 そのためのパスワードを入力して保持するプログラムと、データベースに接続するプログラムを別々に作成して、個別には実行できるようにはなりました。しかし、DBTest_bへのデータの受け渡しがうまく行かないままです。 現在のDBTest_bでは" JOptionPane.showInputDialog "を使って、パスワードを簡単に入力ができるようにしています。このプログラムの目的が、【キーボードからパスワードを入力して、データベースに接続】ならこれでもいいのですが、この先このプログラムを拡張する(「出席」「欠席」ボタンを押して出席率を変化せせるなどのイベントをつける予定です)ときに" JOptionPane.showInputDialog "だと都合が悪いと思い" JOptionPane.showInputDialog "を用いる必要があるなと感じました。上記で説明したデータの受け渡しがうまくいけば、拡張もできるのではないかと考えています。 長々と私の考えを載せてしまいましたが、重要な質問は【2つのプログラム間でのデータの受け渡し方法】です。

    • ベストアンサー
    • Java
  • AWTでメッセージ用ダイアログボックスを表示するには?

    すべての入力項目に入力していない場合、メッセージダイアログで”すべての入力項目を入力してください”というふうにだしたいのですが、 public void actionPerformed(ActionEvent ae){ if(ae.getSource() == btn_sinki); JOptionPane.showMessageDialog((Component)null,"すべてのフィールドに情報を入力して下さい。","エラー通知",JOptionPane.INFORMATION_MESSAGE); } でエラーになってしまいます。シンボルを解釈できません 変数JOptionPane SwingとAWT、よくわかりません・・・。 宜しくお願いします!!

    • ベストアンサー
    • Java
  • MSN Messengerの質問(20PT保証)

    アドレス登録しているAさんとオンラインでインスタントメッセージ(チャット)している時に、「同じグループに登録している」Bさんからインスタントメッセージを受信した時に、画面上はどんな感じになるのでしょうか? 予想 1.Aさんとインスタントメッセージ(チャット)をしている画面に「Bさんからインスタントメッセージを受信しました」と表示され、Aさんと同じ画面にBさんが登場して、3人でチャットする状態になる。 2.Aさんのウインドウと、Bさんのウインドウが別々に表示され、「私」とAさん、「私」とBさんとがそれぞれチャットする状態になる。(AさんとBさんは、それぞれの存在がわからない) 3.Aさんには、「Bさんのメッセージが『私』に届いていることがわかるが、Bさんのメッセージは見えない」 どうでしょうか? 「同じグループに登録している」場合の状況を教えてください。

  • 代理人としての土地の売買契約

    法学検定四級の内容の代理人の土地の売買契約について質問です。 AはBの代理人として、Cとの間でB所有の土地の売買契約を締結した。 このときの詐欺の意志表示の取消について ①CがAに対して詐欺を行った場合、Bは取り消しできない ②CがBに対して詐欺を行った場合、Aが詐欺の影響をうけてなければ、Bは取り消しできない ③AがCに対して詐欺を行った場合、Cが詐欺の影響を受けていることをBがしらなくてもCは取り消しできる ④BがCに対して詐欺を行った場合、Cが詐欺の影響を受けていることをAがしらなくてもCは取り消しできる このことについて、一番が間違いなのですが、それぞれどういったことをいうのか、具体的に誰か解説をおねがいします。

  • "should code"の意味を教えてください

    ある表現について”A”とするか”B”とするかメールでやりとりをしており、最終的に”A”とすることになりました。そのメッセージには、以下のように書かれていました。 ”A” shuold code. この場合、「”A”で了解」のような意味でいいでしょうか。 辞書やネットでも見当たらなかったので、ご教示いただきたく 宜しくお願いします。

  • 再帰呼び出しで求めたい経路を表示させたい!

    以前も「すべての経路を求めるには」というような質問をして再帰呼び出しにより無事解決することが出来ました。 しかし、少しわからないところがあります。 例えばaはb1とb2に接続されていてb1とb2はそれぞれc1,c2とc3,c4に接続されているとします。すべての経路は全部で4本ですね。 これを再帰呼び出しの中にprintf文を用いて表示させたところ a->b1->c1 c2 b2->c3 c4 というような感じで表示されたと思います。これは再帰呼び出しの性質で分岐があった以前の場所へ戻って探索を続けるからだというのは理解できました。しかし、実際は a->b1->c1 a->b1->c2 a->b2->c3 a->b2->c4 というように表示させたいです。何かこれを記憶するための変数が必要だと思うのですが、それを用いて上のように表示させるほう方法が思いつきません。 さらに、a->b2->c3というように特定の経路だけを選択して表示させたいです。アドバイスよろしくお願いします!

  • 共有地での家の建て替え

    AとBが所有する土地に、Aがその土地に、AとCの所有名義の家を建てたいと思い、Bにそれで良いかとたずね、Bが了解し、AとCの所有の家が建てられ、20年間が経過しています。Aは、その家が古くなったから、その家を壊して、また、AとCの所有名義の家を建てたいと思った時、以前と同じように、Bへ建てることの了解をもらう必要があるのでしょうか?それとも、かつて、了解してもらって家を建てたこともあるので、今回は了解をもらう必要はないのでしょうか?