2008-03-01から1ヶ月間の記事一覧

テキストファイルの内容を表示する

ここまでは、表示したいテキストが「固定である」という仮定に基づいてきました。実際には、各チームごとに表示する情報が異なるので、工夫が必要です。 【例題2】TextArea にテキストファイルの内容を表示したい。テキストファイルの内容を読み込んで、テ…

テキストを折り返す

ここまでの手順は、前述した JList と似ています。さらに、TextArea では、1行に収まらないテキストをどのように折り返すかを指定できます。 public void setLineWrap(boolean wrap) public void setWrapStyleWord(boolean word)メソッド setLineWrap(boole…

気軽に Swing《2》JTextArea: 各チーム紹介 3/5

《Previous|3/5|Next》Java.use(better, Swing=Jython) 〜 萬プログラマーのための Python 導入ガイド《記事一覧》 更新♪2008/09/17

テキスト文字列を設定する

TextArea は、複数行のテキストを限られた領域に提示するのに、便利な機能を提供します。表示したいテキストが固定なら、次のように、 public JTextArea(String text) public void setText(String t)コンストラクター JTextArea(String) が便利です。また、…

Swing:TextArea

各チームの情報(テキストファイル)が用意してあるので、その内容を読み込んで表示します。まず、表示したいテキストが「固定である」という仮定に基づいて、話を進めます。 【例題1】TextArea のメンバー特性(フィールド/メソッド)をすべて表示したい。…

気軽に Swing《2》JTextArea: 各チーム紹介 2/5

《Previous|2/5|Next》 Java.use(better, Swing=Jython) 〜 萬プログラマーのための Python 導入ガイド《記事一覧》 更新♪2008/09/17

今回の課題:相手チームを知ろう

【要求仕様】加えて、全32チームの個別情報を表示したい。 サンプルフォルダー Teams には、各チームの情報(テキストファイル)があります。実際に利用するときには、読者のみなさんが望む情報を収集してください。 アプリケーションを起動すると、ドイツ…

対象読者

こんな症状を抱えているなら (@.@) ・Java で構築されたレガシーシステムを再構成したい 【効能】既存のリソースを再利用しつつ、同時に開発効率を改善できるかも 【注意】記事の主旨から「先に示したプログラムが後で覆される」事例が含まれます。次の展開…

はじめに

この記事では、1)アプリケーション開発、2)Swing/Jython の解説、3)支援ツール作成が三位一体となって、読者のみなさんの学習を支援します。今回は JTextArea に着目します。

気軽に Swing《2》JTextArea: 各チーム紹介 1/5

《Previous|1/5|Next》 Java.use(better, Swing=Jython) 〜 萬プログラマーのための Python 導入ガイド《記事一覧》 《2》JTextArea: 各チーム紹介 《著》伊藤うさぎ、森こねこ《監修》小泉ひよ子とタマゴ倶楽部第1版♪2003/12/29 ● 第2版♪2006/10/02 ● …

終わりに

試しに、コードの一部を次のように変更すると、 target = JTextArea()今度は、JTextArea インスタンスのメンバー特性を確認できます。また、 target = JTextAreaとすると、インスタンスだけでなく、その「クラス」のメンバー特性を確認できます。 このツール…

支援ツールを起動する

次のクラス InspectorPanel は、インスペクターの核となるパネルを規定します。class InspectorPanel(JPanel): def __init__(self, target): self.target = target self.layout = BorderLayout() e = self.listView = JList( listData=dir(target), valueCha…

気軽に Swing《1》JList: 予選リーグ全32チーム 5/5

《Previous|5/5|Next》 Java.use(better, Swing=Jython) 〜 萬プログラマーのための Python 導入ガイド《記事一覧》 更新♪2008/09/15

イベントハンドラー:valueChanged

項目 valueChanged を選択すると、次の情報が表示されます。<CompoundCallable with 0 callables>これを見ると、valueChanged には、リスナーが未登録 0 なのが分かります。コンストラクター JList() を使って、生成したばかりのインスタンスに値を初期設定するとき、キーワード引数 valueChange</compoundcallable>…

インスタンスメソッド:setListData

項目 setListData を選択すると、次の情報が表示されます。<method javax.swing.JList.setListData of javax.swing.JList instance 1>これを見ると、メソッド setListData は、javax.swing.JList インスタンスに対して有効なのが分かります。</method>

フィールド:listData

項目 listData を選択すると、次のエラーメッセージが表示されます。AttributeError: write-only attr: listDataフィールド listData は private 属性なので(通常は)そのインスタンスだけが値を設定できます。そこで、コンストラクター JList() を使って、…

支援ツール:JList の状態を確認する

インスタンスのメンバー特性(フィールド/メソッド)を確認できるツールがあると便利です。後述するコードを実行すると、次のようなインスペクターが現われます。 リスト項目にあるのは、JList インスタンスのメンバー特性です。1)左の項目を選択すると、2…

気軽に Swing《1》JList: 予選リーグ全32チーム 4/5

《Previous|4/5|Next》 Java.use(better, Swing=Jython) 〜 萬プログラマーのための Python 導入ガイド《記事一覧》 改訂♪2008/09/15《承前》

例外:TypeError

ここで着目して欲しいのは、Java と違って、メソッドの名前は任意(つまり、valueChanged でなくてもよい)ということです。ただし、次のように、 def paintColor(e):イベントを参照する引数 e を宣言するのを忘れないことです。ここで、次のように定義する…

イベントリスナーを登録する

リスト項目を選択したときに発生するイベントに反応するには、リスナーを設定しておきます。それには、次のように、javax.swing.JList public void addListSelectionListener( ListSelectionListener listener)メソッド addListSelectionListener(ListSelect…

気軽に Swing《1》JList: 予選リーグ全32チーム 3/5

《Previous|3/5|Next》 Java.use(better, Swing=Jython) 〜 萬プログラマーのための Python 導入ガイド《記事一覧》 更新♪2008/09/14

リスト項目を設定する

JList は、多数の項目を限られた領域に表示するのに、便利な機能を提供します。表示したい項目が固定なら、次のように、javax.swing.JList public JList(Object[] listData) public void setListData(Object[] listData)コンストラクター JList(Object) が便…

Swing:JList

今回は、2006 ドイツ大会だけを対象とするので、予選リーグを競う全32チームはすでに確定しています。そこで、表示したいリスト項目が「固定である」という仮定に基づいて、話を進めます。 《例題1》java.awt.Color の中から、指定した色を表示したい。 例…

気軽に Swing《1》JList: 予選リーグ全32チーム 2/5

《Previous|2/5|Next》 Java.use(better, Swing=Jython) 〜 萬プログラマーのための Python 導入ガイド《記事一覧》 更新♪2008/09/14

今回の課題:全32チームの旗を掲げよう

【要求仕様】予選リーグに出場した全32チームを象徴する旗を表示したい。 アプリケーションを起動すると、1)2006 FIFA World Cup ドイツ大会の優勝チーム Italy (ITA) の旗が表示されます。2)各チームを表わす左の項目を選択すると、3)そのチームの旗が…

対象読者

こんな症状を抱えているなら (@.@) ・Java で構築されたレガシーシステムを再構成したい 【効能】既存のリソースを再利用しつつ、同時に開発効率を改善できるかも 【注意】記事の主旨から「先に示したプログラムが後で覆される」事例が含まれます。次の展開…

はじめに

はじめの一歩が末の千里へと実を結びます。旅の始まりに特別な注意はありません。この記事では、1)アプリケーション開発、 2)Swing/Jython の解説、3)支援ツール作成が三位一体となって、読者のみなさんの学習を支援します。今回は JList に着目します。

気軽に Swing《1》JList: 予選リーグ全32チーム 1/5

《Previous|1/5|Next》 Java.use(better, Swing=Jython) 〜 萬プログラマーのための Python 導入ガイド《記事一覧》 《1》JList: 予選リーグ全32チーム 《著》伊藤うさぎ、森こねこ《監修》小泉ひよ子とタマゴ倶楽部第1版♪2003/12/29 ● 第2版♪2006/10/02…

Java.use(better,Python)《記事一覧》

|記事一覧|《こちらに移動中です》2008年3月 9日 (日)Java.use(better, Python) # Jython はじめましたJava プログラマーのための Python 導入ガイド《Jython2.5.0》《著》小粒ちゃん+∞《監修》小泉ひよ子とタマゴ倶楽部第1版♪2003/05/23 ■ 概要 プログ…