Windows 8 (2012.11)
10月末に Windows 8 が発売され、画面タッチによる操作が新 Windows の最大特徴として宣伝されているので、ユーザーにとって使い方がどのように変わったのか試してみました。これまで使用していた Windows 7 パソコンをアップグレードしたので画面タッチによる操作はできませんが、使用してみた感想は次のとおりです。
1.これまでのプログラム
従来のプログラムは「デスクトップ画面」で動作し、この画面でのプログラムの動作や使い方はこれまでのパソコンと同じなので安心しました。Windows Vista や 7 ではウィンドウの枠が半透明になりましたが、Windows 8 では昔のように不透明になりました。これでアプリケーション画面右上の「閉じる」、「最小化」ボタンの場所が分かりやすくなったので有難いことです。
2.スタートメニュー
これまで画面の左下にあった「スタート」ボタンがなくなりました。このため、操作性が低下したと思います。
1)シャットダウン
画面の右下をマウスでポイントすると現れるチャームバーの中の 「設定」 → 「電源」 → 「シャットダウン」で行いますが、チャームバーを表示するのには少しコツが必要で、従来より面倒で分かりにくくなりました。
2)メモ帳やペイントを使うとき
これまで、これらのプログラムは 「スタート」 → 「すべてのプログラム」 → 「アクセサリ」 → で起動していましたが、スタートメニューがなくなったのでこの方法では起動できなくなりました。
Windows 8 では新しくできたスタート画面から 「スタート画面」 → マウスの右クリック → 「すべてのアプリ」 → で起動しますが、メモ帳やペイントが必要になるのはデスクトップ画面で作業をしているときなので、スタート画面に一度切替える手間が増えたことになり、使いにくくなりました。
3.ステータスバーの高さ
ウィンドウの枠幅やステータスバーの高さがまた変わりました。このためGARAさんの公開ソフトウェアのステータスバーの表示が一部切れてしまう問題が生じました。
| Windows 2000 以前 | Windows XP | Windows Vista/7 | Windows 8 |
タイトルバーの高さ | 18 | 25 | 20 | 22 |
ウィンドウの枠の幅 | 4 | 4 | 8 | 8 |
ステータスウィンドウの高さ | 20 | 20 | 28 | 22 |
単位はピクセルです。
4.プログラムのアボート
GARAさんの公開ソフトウェアの1つで、あるボタンをクリックするとアボートする問題が発生しました。調べるとリストビューの構造体メンバーの初期化が不完全なことが原因でした。問題点は修正して修正版をリリースしましたが、これまでの Windows ではこの問題が発生したことはなかったので意外でした。
5.インターネットエクスプローラ(IE)
インターネットエクスプローラはバージョンが10(IE10)になりました。IE10でGARAさんのホームページを見ると、これまでと表示の一部が異なっていることに気付きました。調べてみるとIEはバージョンにより表示のルールが変わっていることが分かりました。このことは以前から「互換表示」の問題として知られていたみたいですが、これまでのIE6〜IE9ではホームページの表示に問題がなかったため、全く気付いていませんでした。
ホームページで発生した表示の問題は次のとおりです。
1)テーブルの枠線の一部が太くなる
2)スタイルシートで作成したボックスの幅、高さがこれまでより大きくなる
対策として簡単なのはHTMLファイルのヘッダに
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7">
を追加することみたいですが、この方法はいつまでサポートされるのか心配なのでHTMLとスタイルシートを次のように変更して、IE6〜IE10で同じように表示されるようにしました。
テーブル の枠線 | 旧 | table タグの中で指定
<table border="1" cellspacing="0" cellpadding="4" bordercolordark="white" bordercolor="black">
|
旧はIE10では テーブルの枠線 の太さが不揃い になる |
新 | スタイルシートで指定
.table1 {border-collapse:collapse;}
.table1 td {border:1px solid black; padding:4px 8px 2px 8px;}
|
ボックス の大きさ | 旧 |
.box1 {border:1px solid black; width:150px; margin:4px 0 0 10px; padding:4px 8px 2px 8px;}
<div class="box1">内容</div>
|
旧はIE10では ボックスの高さ、 幅が padding 分 大きくなる |
新 |
.box1 {border:1px solid black; width:150px; margin:4px 0 0 10px;} .box1c {margin:4px 8px 2px 8px;}
<div class="box1"><div class="box1c">内容</div></div>
|
これ以外の方法として一方のパソコンから接続(コネクション)を確立し、このコネクションを使用して双方向の通信をする方法があります(図−2)。最初に一方からコネクトし、通信の必要がなくなるまでコネクションを維持します(持続的接続:Persistent Connection)。コネクションを維持している間はそれぞれのパソコンが自由にメッセージを送信します。この方法はコネクトのオーバーヘッドがないことと、ルーターがある場合でも一方のルーターのみポートマッピングの設定をすればよいことがメリットです。もしどちらかのパソコンがルーターを使用せず、直接WANに接続しているのなら、ルーターを使用している側からコネクトすればポートマッピングの設定を全く行わずに済みます。
GARAさんが使っているアプリケーションの中には図−2のような接続を使用していると思われるものがいくつかあるので、どのようにして実現しているのかネットで情報を探してみましたがピッタリしたものを見つけることができませんでした(探し方が悪い?)。そこでテストプログラムを作成して信頼性等を確認してみたところうまくいったので、この経験をTipsとして整理しました。次のバージョンの「碁」にはこの通信方式を取り入れたいと思っています。
目的のUPnPによるルーターの設定に向けて、これらを1つづつテスト用プログラムに実装し確認していきました。いくつかの関門がありましたがなんとかクリアしてルーターの設定ができるようになったので、この経験をTipsとして整理しました。いつか「碁」にUPnPを実装したいと思っています。