2016年11月29日火曜日

前回終了時のウィンドウの位置とサイズを復元するHTA

終了直前のウィンドウサイズと位置をファイルに記録して、次回起動時にそのファイルを読み込んで元のサイズ・位置に戻すサンプルを作成しました。


localStorageの使い方確認を兼ねて個人的な入出時刻記録

2016年11月24日木曜日

htaのウィンドウをアクティブにする方法

HTA内部でWScript.ShellのAppActivateメソッドを実行しても、HTAのウィンドウをアクティブにすることはできませんが、HTAから外部スクリプトを作成して、そちらからAppActivateを実行すればアクティブにできます

アクティブにしたいHTAがシングルインスタンス制限を有効にしても良いならば、上記の方法より短いコードで同様の効果を得る方法がありました。


2016年11月15日火曜日

指定日時に文章画像や実行ボタンなどを表示させるリマインダーアプリ

デスクトップPC(Windows)用リマインダ―アプリです。
一旦予定を立てたら、その予定に従って行動している最中は日時に対して注意を払わなくて済むように(次の行動に移る日時になったら画面上に必要なものが表示されるように)するためのものです。
よくあるリマインダーアプリと違うところは「表示させるものをJavaScriptなどで制御できる」という点です。

2016年11月14日月曜日

任意のエレメントが画面上に表示されるようにScrollTopを調整する関数

用途・目的
スクロール可能なエレメント内部の任意のエレメントが画面に表示されるようにscrollTopを調整する関数
Chromeなどのブラウザで動くかは未確認。htaで使っています。

2016年11月2日水曜日

WebWorkerで作成したサブスレッドよりメインスレッドは37%ぐらい速い

WebWorkerを使うとJavaScriptでもマルチスレッド処理が可能になります。
ただしメインスレッド以外はHTMLエレメントにアクセス出来ないとかActiveXObjectは使えないとか色々制約があります。
制約があってできることが少ないというのは、逆に言えば「シンプルな状態」であり、もしかして、制約がある代わりに処理が高速だったりするのでは!?と思って先日比較テストしましたが、もう少し分かり易いデータが取得できました。


WebWorkerのpostMessageは非同期?

先日サンプルを作成して比較した結果、Workerスレッドの方がわずかに速いという結果になったのですが、数回分の試験データを比較した時に気になった点がありました。

タイトルの通り、postMessageは非同期なのか?ということが気になったので、それをプログラムで動作確認しました。


2016年11月1日火曜日

Excelに画像とファイル名を一括挿入するプログラム

Excelで画像を挿入する時、普通に以下のようにすると



仕上がりは以下のようになりますが



以下のように、「Path & 画像」の形式で並べたものが欲しい時がちょくちょくあります。



手作業で並び替えたりPathを貼るのは大変なので、自動でやってくれるプログラムを作成しました。