takaP- の回答履歴
- JDialogのデフォルトアイコン?の消去
JDialogでダイアログを作成した時、デフォルト(?)でタイトルバーの 左隅にアイコン(javaのコーヒーカップ)が表示されます。 これを消すのはどうしたらいいのですか? 以上、よろしくお願いします。
- モーダルとスレッド
JOptionPaneでダイアログを出力する直前に新しいスレッドを作っておき、 その中でバックグラウンド用処理を行いたいと思っています。 色々ためしたのですが、ダイアログの了解ボタンを押すまで新たに作った スレッド内のバックグラウンド処理もブロックされる様です。 (スレッドのプライオリティ等も変更してみました。) モーダル画面を起動するとその画面が終了するまで、そのプロセス内の 全てのスレッドがブロックされるという事なのでしょうか? (勿論、モーダル画面からの入力受付となるEventDispatchThreadは動いて いるのでしょうけど) もし、「そうである」ならば、JOptionPaneはあきらめて、モードレスダイアログ を作成しようと思いますし、「いや、こういう手段がある」というのなら それを教えてください。 以上、よろしくお願いします。
- 無名パッケージのクラス
パッケージ化されたクラス(pacA.ClassA)から、無名パッケージ(ClassB)のクラスを参照できるのでしょうか。 状況を詳しく書きますと、 ClassB はコンパイル済みで、pacA.ClassA の中で ClassB を new しています。 pacA.ClassA をコンパイルしたいのですが、ClassB を import できません(コンパイルエラー)。 それとも、ClassB は import する必要がなく、単に私のコンパイルの仕方(classpathの通し方等)が悪かったのでしょうか。 どなたか教えて頂けませんか。
- 参照渡し?
お世話になります。 下記のソースを実行すると public class ExecMain { public static void main(String[] args) { ObjectLife obj = new ObjectLife(); ObjectLife obj2 = obj; obj = null; System.out.println(obj); System.out.println(obj2); } static class ObjectLife { public ObjectLife() { create(); } public void create() { System.out.println("create calling"); } public void destroy() { System.out.println("destroy calling"); this = null; } } } -------------------- create calling null objectLife.ExecMain$ObjectLife@1b90b39 という実行結果になりました。 「objectLife.ExecMain$ObjectLife@1b90b39」 がnullにならないのはどうしてなのでしょう? また this=null; で自分自身のインスタンスをnullにしようとおもったのですが コンパイルはとおるのですが実行してもなにもおきていないようです。 これはどのように解釈すればよいのでしょうか? 以上よろしくお願いいたします。
- 参照渡し?
お世話になります。 下記のソースを実行すると public class ExecMain { public static void main(String[] args) { ObjectLife obj = new ObjectLife(); ObjectLife obj2 = obj; obj = null; System.out.println(obj); System.out.println(obj2); } static class ObjectLife { public ObjectLife() { create(); } public void create() { System.out.println("create calling"); } public void destroy() { System.out.println("destroy calling"); this = null; } } } -------------------- create calling null objectLife.ExecMain$ObjectLife@1b90b39 という実行結果になりました。 「objectLife.ExecMain$ObjectLife@1b90b39」 がnullにならないのはどうしてなのでしょう? また this=null; で自分自身のインスタンスをnullにしようとおもったのですが コンパイルはとおるのですが実行してもなにもおきていないようです。 これはどのように解釈すればよいのでしょうか? 以上よろしくお願いいたします。
- setEnabledが効かないのはなぜでしょう
下記のソースはあるjButton1(JButtonクラス)がクリックされた時の イベント処理メソッドです。 dummyMethodメソッド呼び出しの部分で多少時間のかかる処理を行いますが、 現在開発中の為、ダミーにしてます。(一瞬で返ってきます) その際、そのメソッド呼び出し前でjButton1をdisableに、jButton2を enableしておき、メソッド呼び出し後に今度はjButton1をenable、jButton2を disableにしようと思っております。 今まで、一瞬で返ってくるおかげで処理的にうまくいっているのだろうと 思っていたのですが、dummyMehodメソッド呼び出し後にsleepを入れてみると、 (ソースのコメントをはずした)dummyMethodメソッド呼び出し前のsetEnabledが効いていませんでした。 イベント処理メソッド内でsetEnabledは行えないのでしょうか? よろしくお願いします。 private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) { jButton1.setEnabled(false); jButton2.setEnabled(true); dummyMethod(); //try { // Thread.sleep(2000); //} catch (InterruptedException ie) { //} jButton1.setEnabled(true); jButton2.setEnabled(false); }
- setEnabledが効かないのはなぜでしょう
下記のソースはあるjButton1(JButtonクラス)がクリックされた時の イベント処理メソッドです。 dummyMethodメソッド呼び出しの部分で多少時間のかかる処理を行いますが、 現在開発中の為、ダミーにしてます。(一瞬で返ってきます) その際、そのメソッド呼び出し前でjButton1をdisableに、jButton2を enableしておき、メソッド呼び出し後に今度はjButton1をenable、jButton2を disableにしようと思っております。 今まで、一瞬で返ってくるおかげで処理的にうまくいっているのだろうと 思っていたのですが、dummyMehodメソッド呼び出し後にsleepを入れてみると、 (ソースのコメントをはずした)dummyMethodメソッド呼び出し前のsetEnabledが効いていませんでした。 イベント処理メソッド内でsetEnabledは行えないのでしょうか? よろしくお願いします。 private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) { jButton1.setEnabled(false); jButton2.setEnabled(true); dummyMethod(); //try { // Thread.sleep(2000); //} catch (InterruptedException ie) { //} jButton1.setEnabled(true); jButton2.setEnabled(false); }
- setEnabledが効かないのはなぜでしょう
下記のソースはあるjButton1(JButtonクラス)がクリックされた時の イベント処理メソッドです。 dummyMethodメソッド呼び出しの部分で多少時間のかかる処理を行いますが、 現在開発中の為、ダミーにしてます。(一瞬で返ってきます) その際、そのメソッド呼び出し前でjButton1をdisableに、jButton2を enableしておき、メソッド呼び出し後に今度はjButton1をenable、jButton2を disableにしようと思っております。 今まで、一瞬で返ってくるおかげで処理的にうまくいっているのだろうと 思っていたのですが、dummyMehodメソッド呼び出し後にsleepを入れてみると、 (ソースのコメントをはずした)dummyMethodメソッド呼び出し前のsetEnabledが効いていませんでした。 イベント処理メソッド内でsetEnabledは行えないのでしょうか? よろしくお願いします。 private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) { jButton1.setEnabled(false); jButton2.setEnabled(true); dummyMethod(); //try { // Thread.sleep(2000); //} catch (InterruptedException ie) { //} jButton1.setEnabled(true); jButton2.setEnabled(false); }
- ウィンドウが閉じられる直前の処理
addWindowListener(new java.awt.event.WindowAdapter() { public void windowClosing(java.awt.event.WindowEvent evt) { exitForm(evt); } }); private void exitForm(java.awt.event.WindowEvent evt) { if (ある状態だった時) { return; } System.exit(0); } 上記ソースの様にある状態だった時にウィンドウを閉じない様に したいと思っています。returnをすれば、大丈夫かと思ったら、 綺麗にウィンドウが閉じてしまいました。 どのようにすれば実現出来ますでしょうか?お願いします。
- JBuilderアプリ作成でタイトルバーを消すには?
タイトルとおりなのですが、アプリケーション起動時にタイトルバー(最大/最小ボタンや×ボタンがあるバー)を消したいのですがフレームのプロパティーにはそれらしい物がありません。なにか方法があるのでしょうか?
- アクティブなTextFieldを検出
<質問> 例えばJFrameの中にJTextFieldが3つあったとします。現在どのJTextFieldにフォーカスがあたっている(アクティブになっている)のか調べたい場合どのようなメソッドを使用すればよいのでしょうか?ちなみにhasFocusメソッドでやってみると常にfalseが返ってきます。 <環境> windows2000 j2sdk1.4.1
- インスタンスNameを文字列で表現するには?
Object State; public static final Object PLAY=new Object(); public static final Object STOP=new Object(); Sateを操作するメソッド(); : : System.out.println(Object.Stateの文字列表現); としたいのですが、ObjectインスタンスであるPLAYやSTOPをprintlnメソッドで文字列として表現させるにはどうすればいいのでしょうか?コンソールにPLAY,STOPと表示させたいのですが、そのままprintln(State)とすると訳の分からない文字(→java.lang.Object@239137)が出てきます。 よろしくお願いいたします。
- Listインターフェースの使用法
Listインターフェースの使い方ですが、 List list; String a = new String("AAA"); String b = new String("BBB"); list.add(a); list.add(b); というふうにするとlistは初期化されていませんとエラーになります。 また、Listに格納したオブジェクトの取り出し方も教えてください。
- ボタンの複数割り当てについて
public class TestButton extends Applet implements ActionListener { Button bt1,bt2,bt3; public void init() { bt1 = new Button("red"); add(bt1); bt2 = new Button("blue"); add(bt2); bt3 = new Button("yellow"); add(bt3); bt1.addActionListener(this); } java初心者です。アプレットで上のようにボタンを作ります。それぞれが押された時に、red,blue,yellowが表示されるようにしたいのです。ActionListenerをインプリメントしているので、 public void actionPerformed(ActionEvent ae) をオーバーライドする必要がありますが、そこで質問です。 ボタンを3種類別々に関連づけるには、actionPerformed内をどのように記述したらよいでしょうか?また、init内はこれだけでいいんでしょうか? よろしくお願いします。
- コマンドライン引数のチェック
args[]ってString型の配列変数ですよね? たとえば、 コマンドライン引数で数字を受け取って演算するために Stringからint等の数値に変換するとします。 Integer.ParseInt()を使うと、もし数字ではない引数 だったときに例外処理が発生します。 事前に文字か数字がチェックする方法はあるのでしょうか? それとも例外処理で対応するしかないのでしょうか?
- ベストアンサー
- Java
- noname#62349
- 回答数2
- コマンドライン引数のチェック
args[]ってString型の配列変数ですよね? たとえば、 コマンドライン引数で数字を受け取って演算するために Stringからint等の数値に変換するとします。 Integer.ParseInt()を使うと、もし数字ではない引数 だったときに例外処理が発生します。 事前に文字か数字がチェックする方法はあるのでしょうか? それとも例外処理で対応するしかないのでしょうか?
- ベストアンサー
- Java
- noname#62349
- 回答数2
- javaのRandomで『a~z』までの乱数を表示させたいですが・・・。
『a~z』の英小文字をランダムで表示させ、さらにint型変数countを『0~9』までランダムに発生させて取得した数だけ『a~z』をランダムに表示させたいのですが、表示結果が(例)aaaaa・・・ となってしまいます。本当は、acyxd・・・とランダムに表示させたいのですがどうすれば、よいでしょうか? import java.util.*; import java.io.*; class CharCheck{ public char charRandom(){ int n; char c = ' '; Random ran = new Random(); while(true){ n = ran.nextInt(123); if(n >= 97 && n <= 122){ c = (char)n; break; } } return c; } public class RandomTest extends CharCheck{ public static void main(String args[]){ char ch[] = new char[10]; int count = 0; CharCheck ChChk = new CharCheck(); Random ran = new Random(); komoji = ran.nextInt(9);//英小文字をいくつ表示するかランダムで決める? (1以上とする) if(count == 0){ count++; } for(int i=0; i<count; i++){ ch[i] = ChChk.charRandom(); System.out.println(ch[i]); } } }
- 乱数の発生の仕方教えてください
javaで乱数の発生の方法がいまいちわかりません。 import java.util.*;で Randomクラスを使うというところまではわかるのですが、実際にソースでの乱数の発生の仕方がわからないので教えてもらえないでしょうか?
- GUIでコンパイルと配置ができるフリーソフトありますか?
Servletの場合、コンパイル後にできあがったクラスファイルを、Tomcat等の...\WEB-INF\classes\ ディレクトリ以下に配置しなければなりませんが、 毎回、↓ javac -d %TOMCAT_HOME%webapps\test\WEB-INF\classes XXX.java のようにするのが面倒です。GUIでファイルを選択するだけでコンパイルから配置まで行ってくれるフリーソフトはありますか? ・batchファイル ・Ant も検討してみましたが、batchファイルはよくわからず、Antはディレクトリ単位では、コンパイル->配置までできましたが、ファイル単位で行う方法がわからず、タイムスタンプが同一でもコンパイルしてしまうようで、あまりメリットが感じられませんでした。 環境は、WindowsXPで、エディタは秀丸使用しています よろしくお願いします。