トップ «前の日記(2007-05-27) 最新 次の日記(2007-05-30)» 編集

十日日記


2007-05-29

Link HTAはVBScript→JScriptの順

最低レベルのGUIでよい場合には、VBScriptを使うのが最も簡便だ。VBScriptはInputBoxとMsgBoxとを備えているから、インターフェイスを通じて最低限の入出力が行なえる。もう少し装備を増やしてチェックボックスやボタンなどのコントロールが使いたいなら、VBScriptにIEオブジェクトを組み込むか、もしくはHTA(HTML Application)を使うことになるだろう。

きのう偶然HTA Developers Centerを見つけたので、Extreme MakeoverPart 2という初心者向け入門記事を読んだ。

記事はためになったが、読みながら疑問に思ったことがある。それは、ウィンドウサイズについてまったく触れられていない点だ。HTAタグの要素として存在するかと思いきや、それも違う。どうやら、他のHTMLファイルと同じようにJavaScript(あるいはJScript)で制御しなくてはならないようだ。このときコツが2つある。

<script type="text/VBScript">
    Sub Hoge
        MsgBox "hoge"
    End Sub
</script>

<script type="text/VBScript">
    Sub Foo
        MsgBox "foo"
    End Sub
</script>

<script type="text/JScript">
    var htaWidth = 400;
    var htaHeight = 250;
    window.resizeTo(htaWidth, htaHeight);
    window.moveTo((screen.width - htaWidth) / 2, (screen.height - htaHeight) / 2);
</script>

<head>
<title>Hoge and Foo</title>
<HTA:APPLICATION
     APPLICATIONNAME="Hoge"
     SCROLL="yes"
     SINGLEINSTANCE="yes"
>
</head>

<body>
<input type="button" value="Hoge" name="btnHoge" onClick="Hoge">
<input type="button" value="Foo" name="btnFoo" onClick="Foo">
</body>

1つは、ウィンドウサイズを変えて位置を変更させるJavaScriptはHTAタグよりも前に書いておく点。HTAのあとに持ってくると、一瞬画面左上にウィンドウが表示されてから移動するので、ちょっと見苦しい。

もう1つは、VBScriptをJavaScriptよりも前に書いておく点。このようにしないとエラーが発生する。以上を考慮に入れると、scriptタグはファイルの先頭付近に持ってくることになる。実は、昼間かんたんなユーティリティを作っているときこの事実に気がつかずハマってしまい、しかたなくVB6で作ったのだった。悔しいので自宅で調べてみて、ようやく判明した次第である。

HTA Developers Centerに置いてあるHTA Helpomaticは悪くない。これは各要素のサンプル集で、このアプリ自体がHTAで作られているのでソースを見ることができる。

Tags: 言語 PC
[]


プロフィール

渡辺 慎太郎(na@10days.org)

分野別表示

Admin | Client | Dev | Excel | Linux | PC | PDA | Web | iPad | web | 家電 | 文具 | | 英語 | 言語 | | 音楽

月別表示

1999|07|
2003|05|06|07|08|09|10|11|12|
2004|01|02|03|04|05|06|07|09|10|11|12|
2005|01|02|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|09|10|11|12|
2011|01|02|03|04|05|06|07|08|09|10|11|12|

最近の記事

雨量情報 dictionary.com Yahoo google Yahoo! 路線情報 東京アメッシュ l-mura l-aka l-momo 目次 r-mura r-aka r-daidai r-kiiro asahi.com nogulabo r-sora r-midori r-midori r-momo