• ベストアンサー

ダイアログにおける改行

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

  • Java
  • 回答数1
  • ありがとう数1

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

  • ベストアンサー
  • 78tch
  • ベストアンサー率31% (50/157)
回答No.1

メッセージを\n入力 か メッセージを" + "\n" + "入力 でしょうか。

bulgarian
質問者

お礼

解決しました.\n については自分でも確かめたつもり だったのですが,あっさり メッセージを" + "\n" + "入力 でコンパイル通りました.ありがとうございました.

関連するQ&A

  • ダイアログ内の改行について

    初歩的な質問ですが、ダイアログ内の改行について教えてください。 Perl(ver.5)のプログラムからHTMLを出力しています。 Perl部分でエラーは出ていません。 その中でJavaScriptがあり ================================================== if(confirm("ファイルを削除します。\nよろしいですか?")){ document.form.aaa.value = url; document.form.submit(); } ================================================== というような内容なのですが、 メッセージの中に\nを入れると 「エラー:終了していない文字の定数です」 と表示されます。 上記から\nだけを取るとエラーは表示されないのですが、 ダイアログを改行させるにはどうすれば良いのでしょうか??

  • ファイルから正しい文字が読み取れない

    こんにちは いつもこちらでお世話になっています。 テキストファイルからすべての文字列を読み込んで フレーム上のtextAreaに読み込んだ文字列を書き込みたいのですが 文字化けしてしまって、正しく表示されません。 どなたか、正しく表示する方法を教えていただけないでしょうか。 よろしくおねがいします。 ちなみに、テキストボックスのパスとファイル名は(c:/test.txt)です。 ================================================= import java.awt.*; import javax.swing.*; import java.io.*; class labeltest { public static void main(String args[]) { JFrame frame=new JFrame("test"); JPanel panel=new JPanel(); JTextArea ta=new JTextArea(20,30); String buff; ta.setLineWrap(true); panel.add(ta); Container ct=frame.getContentPane(); ct.add(panel); try { FileReader fr=new FileReader("c:/test.txt"); BufferedReader br=new BufferedReader(fr); while((buff=br.readLine())!=null) { ta.append(buff); JOptionPane.showMessageDialog(null,buff,"", JOptionPane.PLAIN_MESSAGE); } br.close(); fr.close(); } catch(FileNotFoundException e) { JOptionPane.showMessageDialog(null, "見つからない","失敗",JOptionPane.PLAIN_MESSAGE); } catch(IOException e) { JOptionPane.showMessageDialog(null,"読めない","失敗" ,JOptionPane.PLAIN_MESSAGE); } frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.pack(); frame.setVisible(true); } }

    • ベストアンサー
    • Java
  • JOptionPaneでのフォーカスのトラブル

     今晩は。  私はJOptionPaneを、親コンポーネントをnullにして使っていたのですが モーダルなままで消えてしまうことがあります。次の方法で再現出来ます。 1.下記コードをJOptionPane.showMessageDialog(null, "test");の方で動かす。 2.ダイアログが出たままにして、タスクバーからデスクトップを表示する 3.再びタスクバーのアイコンからjavaのフレームを表示する。 4.タスクマネージャーで停止しないとフレームが消えない。  これはjavaのバグではないかと思うのですが、そうでしょうか。  また、別なクラスのダイアログから親コンポーネントを指定する時は、参照変数がなくても良いように、いつも引数nullで使っていたのですが、もし無理なら、何かそれに変わる便利な方法はないでしょうか。教えて下さい。 import java.awt.*; import javax.swing.*; public class BugTest{ public static void main(String[] args){ JFrame fr=new JFrame(); fr.setDefaultCloseOperation(fr.EXIT_ON_CLOSE); fr.setVisible(true); fr.setExtendedState(fr.MAXIMIZED_BOTH); JOptionPane.showMessageDialog(fr, "test"); //JOptionPane.showMessageDialog(null, "test"); } }

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

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

    • ベストアンサー
    • Java
  • JOptionPaneのダイアログパネルの背景色の変え方

    Javaのダイアログの背景色の変え方を教えてください。 今、課題を作成中なのですが、ダイアログパネルを出すとパネルの背景色が「ライトグレー」になります。その色が他のパネルの色と合わないので、変更したいと思い、setBackgroudなどで設定変更したのですが、色の変化がありません。SUNのAPIを見ると変更できそうなのですが、できませんでした。 変更の仕方をご存知でしたら、教えてください。 ソース1 private void Dialog_process(String msg) { JOptionPane pane = new JOptionPane(); JOptionPane.showMessageDialog(this,msg,"",JOptionPane.WARNING); pane.setForegroung(Color.red); pane.setBackground(Color.white); } ソース1の結果は ダイアログのパネル背景色は「ライトグレー」、文字色は「黒」です。 ソース2 private void Dialog_process(String msg) { JOptionPane pane = new JOptionPane(msg,JOptionPane.WARNING_MESSAGE); JDialog pane_dialog = pane.createDialog(this,""); pane.setForegroung(Color.red); pane.setBackground(Color.white); pane_dialog.show(); } ソース2の結果は ダイアログのパネル背景色の外は「白」、中は「ライトグレー」、文字色は「黒」です。 望む結果はパネル背景色が「白」、文字色は「赤」です。 制限事項はありません。もともと「JOptionPaneではパネル背景色が変えられないのでは」の疑問もあります。 お願いします。(^^

    • ベストアンサー
    • Java
  • Javaでの改行コード

    Javaでファイル出力をしたいのですが、 改行コードを「\n」にしたところ「・」が入ってしまいました。 「・」が入らないような改行コード、あるいは なにか良い対策案を教えて下さい。

    • ベストアンサー
    • Java
  • JTextFieldのgetTextについて

    javaプログラミング初心者です。 javaのGUIプログラミングについて少し分からないところがあるので質問させて頂きます。 import java.awt.*; import java.awt.event.*; import javax.swing.*; public class TextTest extends JFrame implements ActionListener{ private static final long serialVersionUID = 1L; JTextField text = new JTextField(null, 10); JPanel p1 = new JPanel(); public static void main(String[] args){ TextTest frame = new TextTest(); frame.setVisible(true); } public TextTest(){ setBounds(10, 10, 460, 310); setDefaultCloseOperation(EXIT_ON_CLOSE); setTitle("Test"); GridBagLayout layout1 = new GridBagLayout(); p1.setLayout(layout1); GridBagConstraints gbc = new GridBagConstraints(); gbc.gridx = 0; gbc.gridy = 0; layout1.setConstraints(text, gbc); p1.add(text); JButton decidebutton = new JButton("決定"); gbc.gridy = 1; layout1.setConstraints(decidebutton, gbc); p1.add(decidebutton); getContentPane().add(p1, BorderLayout.CENTER); decidebutton.addActionListener(this); decidebutton.setActionCommand("決定"); } public void actionPerformed(ActionEvent e){ String cmd = e.getActionCommand(); if(cmd.equals("決定")){ String str = text.getText(); if(str == null){ JOptionPane.showMessageDialog(null, "NULL入力"); } else{ JOptionPane.showMessageDialog(null, "それ以外"); } } } } 以上のプログラムを実行したとき、「決定」ボタンを押した際に「NULL入力」と書かれたダイアログが出てくるのが望ましいのですが、 実際には「それ以外」と書かれたダイアログが出てきてしまいます。 getTextメソッドではnullを返せないのか、と思い、テキストフィールドに「あ」、「NULL入力」と書かれたダイアログを表示させる条件をif(str == "あ")にしたのですがそれでも駄目・・・。 独学では限界があると思い質問させて頂きました。 これについての解決の方法を知っている方、よろしくお願いいたします。

    • ベストアンサー
    • Java
  • (php) メールの改行コードについて

    phpでプログラミング中です。 メールを送信する際に 、メッセージ中に改行コードを入れたいのですが 思ったように改行してくれません。 (メールを送信はRestAPIを使って行っていますので、詳しくはわかりません) 実際には、思ったとおりに改行してくれていたのですが、そのRestAPIをバージョンアップしたら、改行されなくなってしまいました。 エディタ上での改行、 \n \r \r\n 全て試したのですが、  エディタ上での改行では、改行されず、 \r、\n、\r\n、全て2行改行になってしまいます。 PHP_EOLも使ってみましたが、改行されませんでした。 見た目、改行されているのはどうも、そのAPI自身が 70文字を超えたら改行しているように見えます。 他に改行するコード、改行する方法はありますでしょうか? 何でも試したいのです。 APIの開発元に聞いたり、バージョンアップの内容がわかればよいのでしょうが それを確認することは出来ない状態です。 何故出来ない? って言われそうですが。すみません。。。

    • 締切済み
    • PHP
  • TEXTAREA内の改行位置をinnerHTMLで反映させたい

    例えば、 <HTML> <HEAD> <SCRIPT> function send(){ var message = f1.message.value var str = '<HTML>\n<HEAD>\n</HEAD>\n<BODY>\n' str += ''+ message +'\n' str += '</BODY>\n</HTML>' document.frame1.document.body.document.body.innerHTML = str } </SCRIPT> </HEAD> <BODY> <FORM name="f1"> <TEXTAREA rows="10" cols="40" name="message" onChange="send()"></TEXTAREA> </FORM> <IFRAME name="frame1" id="frame1" width="90%" height="350"></IFRAME> </BODY> </HTML> このような記述をして、テキストエリア内に文字を数行にわたって書き込んでも改行はされません。 どのようにすれば改行されるようになりますか? innerHTMLのところをinnerTEXTとして改行位置に<BR>タグが入るようにするのでもかまわないのですが、、、 どなたかお分かりになる方、ご教授願います。

  • ファイル読込みにおける改行表示に関して

    Javaの少々慣れ始めた者ですが、 現在、下記のようにファイル読込みした内容をコンソールに出力する プログラムを作成しております。 しかし、コンソールの表示結果が望んでいる結果と異なってしまっております。 というのは、読み込みファイルにて「\n」と記述している箇所にて、 改行することを望んでおりますが、コンソール表示結果は改行されずに、 そのまま「\n」が表示されており改行されません。 「\n」を改行として認識させるには他に方法があるのでしょうか? 大変お手数お掛け致しますが、ご教授お願い致します。 ■OS Windos Vista HomeEdition ■Java jdk1.6.0_12 ■Test.java ----- import java.io.BufferedReader; import java.io.FileReader; import java.io.IOException; public class Test {  public static void main(String[] args) {   // バッファリーダー宣言   BufferedReader br = null;   try {    // ファイルオープン    br = new BufferedReader(new FileReader( "TEXT.txt" ));    // ファイル読込み行    String line = "";    while ( ( line = br.readLine() ) != null ){         System.out.println(line);    }   } catch (Exception e1) {    e1.printStackTrace();   } finally {    try {     br.close();    } catch (IOException e2) {     e2.printStackTrace();    }   }  } } ----- ■TEXT.txt ----- これはテストですか?\nはい、テストです。 ----- ■コンソール結果 ----- これはテストですか?\nはい、テストです。 ----- ■望む表示結果 ----- これはテストですか? はい、テストです。 ----- ↑どうもうまく改行できておりません。。。

    • ベストアンサー
    • Java

専門家に質問してみよう