風葉音 2006-02-10 20:27

·Hello, Yahoo! Widget.

テキストを変えてみよう

前回作成したHello, World. Widget。入力(またはダウンロード)した.konファイルを改めて見てみましょう。

<?xml version="1.0" encoding="utf-8"?>
<widget>
 <window>
  <title>Hello, World.</title>
  <width>128</width>
  <height>32</height>
 </window>
 <text>
  <name>message</name>
  <data>Hello, World.</data>
  <size>15</size>
  <color>#ffffff</color>
  <opacity>255</opacity>
  <bgColor>#000000</bgColor>
  <bgOpacity>127</bgOpacity>
  <vOffset>30</vOffset>
  <hOffset>0</hOffset>
  <alignment>left</alignment>
 </text>
</widget>

ご覧のとおり「Hello, World.」という部分が2ヶ所あります。これらの周囲を見てみると、2つ目の「Hello, World.」が「<text>」と「</text>」、「テキスト」で囲まれていることがわかります。そうなのです。こちらの「Hello, World.」を変更すると違うテキストが表示されるのです。

それでは変更してみましょう。

<?xml version="1.0" encoding="utf-8"?>
<widget>
 <window>
  <title>Hello, World.</title>
  <width>128</width>
  <height>32</height>
 </window>
 <text>
  <name>message</name>
  <data>Hello, Yahoo! Widget.</data>
  <size>15</size>
  <color>#ffffff</color>
  <opacity>255</opacity>
  <bgColor>#000000</bgColor>
  <bgOpacity>127</bgOpacity>
  <vOffset>30</vOffset>
  <hOffset>0</hOffset>
  <alignment>left</alignment>
 </text>
</widget>

ファイルを上書き保存してダブルクリックします。

前回も説明しましたが、Widgetが更新されたのでYahoo! Widget Engineが注意を促します。今回も自分で変更したので問題はないかと思います。「許可」をクリックしましょう。

おや? テキストは予想どおり変更されましたが途中で切れてしまいました。

なぜでしょう。実は先ほど変更した部分が「<text>」と「</text>」、「テキスト」に囲まれているのと同じように、「<window>」と「</window>」、「ウィンドウ」に囲まれている部分にその原因があるのです。

この部分に「128」という数値があります。この値がウィンドウの幅を設定していたのです。ウィンドウなのにどうして見えないのだろうと疑問を持たれた方もいるでしょうが、それについては後ほど説明します。

今回の場合、テキストの文字数が多くなったためウィンドウの幅を超えてしまい、その越えてしまった部分が表示されなかったのです。ですから、この数値をもっと大きくしてウィンドウの幅を広げればよいのです。

<?xml version="1.0" encoding="utf-8"?>
<widget>
 <window>
  <title>Hello, World.</title>
  <width>256</width>
  <height>32</height>
 </window>
 <text>
  <name>message</name>
  <data>Hello, Yahoo! Widget.</data>
  <size>15</size>
  <color>#ffffff</color>
  <opacity>255</opacity>
  <bgColor>#000000</bgColor>
  <bgOpacity>127</bgOpacity>
  <vOffset>30</vOffset>
  <hOffset>0</hOffset>
  <alignment>left</alignment>
 </text>
</widget>

これでテキスト全体が見えるようになりました。

実はWidgetは透明なウィンドウの上に作られます。このHello, World. Widgetの場合は、透明なウィンドウの上に「Hello, World.」――今は「Hello, Yahoo! Widget.」ですが――というテキストだけでWidgetができあがっているのです。

* * *
·トラックバック i
name sign site
·コメント i ここでは「w≠笑」です。
検索
メイプルストーリー
ロリポップ!
Opera
NOw 時間ねぇー