2006-01-01から1年間の記事一覧
S2JFaceにおける画面の遷移は、API的に言えば org.seasar.jface.S2JFaceWindowManager の open() メソッドを呼び出せばすんでしまいます。つまり、アクションクラスの中からこのメソッドを呼んでしまえば新しい画面を開くことは可能です。(なお、一般的なGUI…
今でこそ、ソースコードの大半はEclipseで書くようになりましたが、昔は社内でも折り紙付きの秀丸使いでした。当時(といっても3〜4年前ですが)は Eclipse はまだ一般的ではなく、社内では JBuilder の利用が推奨されていました。でも、私だけは、「起動が遅…
お陰様で、連載第5回が11月号に掲載されました。今回は、マイブラウザに「お気に入り機能」を実装することを目標としています。詳細設計レベルでのクラス追加の考え方、どこから実装していけば良いかといった、実際に手を動かすときに悩みそうなポイント…
S2JFace新方式での画面定義XMLの書き方についてまとめてみます。S2JFaceでは、複数のコンポーネントを並べる際、 タグで括ります。これは、HTML でいうところの タグと同じイメージです。(SWT的には、composite オブジェクトそのものに対応します)composite …
しばらくなりを潜めていたS2JFaceですが、水面下でちょっとずつ修正中です。先日コミッタになった id:bskuroneko さんの提案でXML定義ファイルの仕様を大変更しました。いままでは、 <control type="button" />というように control 要素の type 属性でコントロールの種類を指定してい</control>…
ちょっと気を抜いていたら、あっという間に1ヶ月近くサボってしまいました。ここしばらく、夜眠れなくて睡眠導入剤のお世話になっているんですが、どうも薬に弱い体質らしく、生活のリズムが狂いまくっています。薬を飲まないと眠れない、飲めば眠れはするの…
おかげさまで、連載第4回が形になりました。 反応も概ね好評のようで、読者のみなさまには本当に感謝です。m(_ _)m今回は、ブラウザに「HTMLを保存する」機能を追加した続きで、ファイルI/O周りの基礎について解説してます。JavaのファイルI/O周りって、柔…
無事、11月号分脱稿しました。いろいろ問題になっているSWTのライブラリ問題については、編集さんと相談中です。できるだけ多くの人に簡単に試してもらえるようにしたいので、SWT+JFaceのライブラリを一緒に配布したいんですが、ライセンス的に「一部のライ…
世間はお盆休みだというのに、執筆の世界はもう秋(?)です。この発売月のギャップにはなかなか慣れません。ときどき、「あれ? 今店頭に並んでいるのは何月号?」と、わからなくなってしまうのです。さて、11月号では、新しく「お気に入り」機能を実装しつつ、…
id:bskuroneko さんがコミッタになってくださり、イベント系処理のコードが増殖中です。マウスの移動とか、ホイール回転なんかのイベントも扱えるようになりました。たまにS2JFaceのライン数をステップカウンタでカウントしてグラフに載せているのですが、つ…
先日フォロー記事を書きましたが、環境によってはやはり動かない方もいらっしゃるようです。 実行時に以下のようなエラーが発生してしまう場合について、先日補足でちょっと触れた対処について詳しく説明します。 Exception in thread ”main” java.lang.Unsa…
日経ソフトウエアへ連載させていただいている「作って覚える!Java入門」で、Eclipseのバージョンが違うとサンプルが動作しない、というご質問を読者のみなさまからいただいています。現在は、配布ファイルのサイズを減らすために、Eclipse3.1.2 に付属する…
またしばらくご無沙汰になってしまいました。実はトラックバックいただくまで気づかなかったのですが、id:bskuroneko さんがS2JFaceに興味をもってくださっており、独自に改造(というか機能追加)までしておられました。せっかくなので、コミッタにお誘いして…
前回書いた、JFaceのMenuManagerによるメニューの実装がざっくりできあがりました。とりあえず、こんな感じで画面が出せます。画面定義XML はこんな感じです。 <control id="menuBar" type="menuManager"> <item label="ファイル(&F)"> <item>newAction</item> <item label="" /> <item>openAction</item> <item>closeAction</item> <item label="" /> <item>…</item></item></item></item></control>
おかげさまで、連載第3回が無事掲載されました。 今回は、SWTベースのブラウザに「名前を付けて保存」機能を実装しつつ、クラスの考え方を解説しています。「なぜJava」では、まるまる数十ページかけてクラスの考え方について解説しましたが、今回は連載の…
ひさびさにS2JFaceです。ここ何週間か、頭を悩ませていたメニューのサポートですが、id:dkameya さんに進めてもらっているSWT版のメニューとは別に、JFace が提供する MenuManager のサポートも考えてみました。画面定義XMLでは、こんな感じで記述します。 <control type="menuManager"> <item label="ファイル(&F)"> <item></item></item></control>…
Panasonicのオキシライド電池を使って有人飛行を行う「オキシライド有人飛行プロジェクト」(http://oxyride.jp/)が、7月16日、391.4mの飛行に成功しました!今回はPanasonicと東工大の共同プロジェクトで、飛行機の開発に携わったのは、私の出身サークル「Mei…
連載第4回の執筆中。今回はできるだけ実践ベース、必要な知識ベース(行き当たりばったり、ともいう?)で解説をするようにしているのですが、覚える要素が増えてくると結構苦しくなります。教える側の立場で言えば、「体系的な知識」というのはとても教えやす…
今週末(7/15)に北海道大学で開催される、「オープンソースカンファレンス2006北海道」(http://www.ospn.jp/osc2006-do/)で、私が「SeasarConference 2006 Spring」で講演させていただいた「今さら人には聞けないDI入門」が講演されます。「されます」と書い…
メソッドバインディングの一環として、メニューとメソッドバインディングの関係について考えてみます。メニューついては、すでに id:dkameya さんがレンダラを作成してくれたので、以下のようなXMLを書くことでウィンドウにメニューを追加できるようになって…
読者の方から、「EclipseをDドライブにインストールした場合、サンプルが動かない」とご質問をいただきました。基本的にはCドライブへのインストールを前提に書いているのですが、対処方法を紹介します。 Eclipseを起動している場合は、一度終了させる。 MyB…
ちょっと間が空いてしまいましたが、週末でS2JFaceの開発を少しだけ進めました。以前のエントリ(http://d.hatena.ne.jp/y-komori/20060610)で書いた画面定義XMLの継承が実現できました。既に、テスト用のサンプルXMLも継承を利用して書き直していますので、…
122ページに記載されているダウンロード先ですが、誤っておりました。 【誤】 http://software.nikkeibp.co.jp/software/download/0608/ 【正】 http://software.nikkeibp.co.jp/software/download/0608/java0608.lzh (または java0608.zip) 謹んでお詫び申…
日経ソフトウエアの8月号が発売されました。「とことん作って覚える!Java入門」の第2回が掲載されています。おかげさまで、第1回の記事はJavaとEclipseのインストールしか書いていないにもかかわらず、なかなか好評だったようです。入門としては第2回か…
つい先ほど、連載第3回の原稿を無事(?)脱稿しました。ハテナマークがついてしまうのは、昨日になって突然38.6度の高熱と頭痛に見まわれてしまい、編集さんに謝って少し待ってもらっていたから。病院で薬もらって一晩寝たら治ったので、本日執念の脱稿です。…
今週は仕事がばたばたしていたのと、持病の肩こりがひどくて、ナイトワークがあまり進まず、ブログもお休みしてしまいました。(地道にS2JFaceをすすめてくれている id:dkameya さんに感謝!)ひさしぶりに週に2回も整体の先生に診てもらって、なんとか復活。こ…
http://d.hatena.ne.jp/szk-takanori/20060610#1149954495社内でWebアプリケーションテストツールの Selenium がはやってます。話を聞いていると、かなり使えそう。
http://d.hatena.ne.jp/cero-t/20060611/1150044902会社の後輩の id:cero-t さんが頑張って検討してくれています。今後の案件で使えそうなので、期待大。
id:makotan さんからコンポーネントの再利用について要望をいただいたので、まずは通常の再利用について考えてみます。 再利用可能なコントロールを作る たとえば、OK ボタンと Cancel ボタンを並べたようなコンポーネントを定義しておき、どこからでも利用…
さて、少し時間が空いてしまいました。Table や Tree については id:dkameya さんがレンダラの実装をガリガリすすめてくれているので、私の方は XML 記述の省力化に取り組んでいきます。実システムでは似たような画面を大量に作ることが多いため、作業の省力…