TOPシステム開発> 画面に表示される文字列を変更する
Nexaweb Studio
Nexaweb Studioで手軽にリッチクライアントアプリケーション開発

第2回:簡単に設定できる「Event Wizard」

著者:チェンジビジョン  岩永 寿来、豆蔵  長谷川 裕一
2007/4/16
前のページ  1  2  3  次のページ
画面に表示される文字列を変更する

   ここでは画面に表示される文字列を「HelloWorld」から「こんにちは」に変更する処理を作成する。これはnxmlファイル内のラベルの「text」プロパティの値を「HelloWorld → こんにちは」に変更するだけだ。

   属性の値を変更するにはset-attributeが使用できる。Macro SettingのTypeコンボボックスからset-attributeを選択し、「Macro Attributes → Select」で属性を変更する対象の要素を、リスト1の構造を確認しながら、ラベルを選択するXPath形式で「/nxml/rootPane/panel[1]/label[1]」と指定する。

   次に「Name」で変更する属性の名前「text」を指定し、最後に「Value」に「こんにちは」と指定する。ウィザードを進めるとEvent Wizardで作成したMacroのコードが表示されるので、「Finish」ボタンを押して完了してほしい。

   なおNexawebでは、XMLドキュメントにノードの追加、更新、削除などの操作が行えるW3Cのワーキングドラフトで定義されたXUpdateが利用できる。

文字化けの解消

   だがMacroのコードをプレビューしたときに、日本語が化けてしまっていることに気がついたとだろうか。残念ながら現時点のバージョンでは、Event Wizardで日本語を使用すると文字化けしてしまうのである。

   文字化けを修正するために、「Source」タブを選択して、コード上の文字化けしている「こんにちは」を直接修正しよう(リスト2)。修正が終わったら、HelloWorldサンプルを実行して作成したサンプルの動作を確認してほしい。

リスト2:set-attributeを定義した後
リスト2:set-attributeを定義した後
(画像をクリックすると別ウィンドウに拡大図を表示します)


ラベルにidを定義する

   ここでXPathでルートからのパスでラベルを特定したが、ラベルにidを定義して参照することも可能だ。それを行うには、まずプロパティビューからラベルのidに「message」を定義する。次にリスト2の中にある(1)に記載されている「select」で指定している「/nxml/rootPane/panel[1]/label[1] → id(''message'')」に変えてみてほしい。

   ここで注意してほしいのは、idの文字列をシングルクォート2つで囲んで指定しなくてはいけない点だ。このようにid指定で要素を特定するほうが、XML構造の変更に影響されないのでよい方法だろう。

前のページ  1  2  3  次のページ


株式会社チェンジビジョン 岩永 寿来
著者プロフィール
株式会社チェンジビジョン  岩永 寿来
モデリングツールJUDEを開発しているチェンジビジョンで、ソフトウェア開発プロジェクトの見える化を支援するTRICHORDを開発している。最近は2DやJOGLなど3D技術に興味があり、クールなUIやエフェクトを日々探求している。共著として「Spring入門(技術評論社)」、「Spring2.0入門(技術評論社)」。


株式会社豆蔵 長谷川 裕一
著者プロフィール
株式会社豆蔵  長谷川 裕一
XMLの技術開発やCORBA、EJBを使用したシステム開発などを経て、現在はアジャイル開発プロセスの導入から工学的なソフトウエアプロセスの策定、オープンソースプロダクトに関するコンサルタント、アーキテクトとして常に第一線で活躍。共著として「プログラムの育てかた 現場で使えるリファクタリング(ソフトバンク)」、「Spring入門(技術評論社)」。


INDEX
第2回:簡単に設定できる「Event Wizard」
  イベント処理を簡単に設定できる「Event Wizard」
画面に表示される文字列を変更する
  画面遷移を作る