2007-09-25

Todayプラグインのフォントサイズを変更する

先日気付いたWifiInfoのフォントサイズの問題を修正してみました。
 
 
 
フォントサイズは SHGetUIMetricsで取得できたので WM_PAINTの部分に追加します。
// フォントサイズを取得する。
if (S_OK == SHGetUIMetrics(SHUIM_FONTSIZE_POINT, &dwFontSize, sizeof(dwFontSize), NULL)) {
    dFontSize = dwFontSize / 100;
} else {
    // 取得できない場合は 9ポイントとしておく
    dFontSize = 9.0;
}
hSysFont = (HFONT) GetStockObject(SYSTEM_FONT);
GetObject(hSysFont, sizeof(LOGFONT), &lf);
lf.lfWeight = FW_NORMAL;
lf.lfHeight = (long) -((dFontSize * (double)GetDeviceCaps(hDC, LOGPIXELSY) / 72.0)+.5);
hFont = CreateFontIndirect(&lf);
hFontOld = (HFONT) SelectObject(hDC, hFont);
 
注意点としてフォントサイズをポイントで取得した場合は 100分の1にする必要があります。
最初、巨大な文字の端だけが表示されていて何が起こっているのかわかりませんでした(笑
 
また SHGetUIMetricsの結果を見る限り、標準のフォントサイズは 9ポイントで大丈夫でした。
もちろん環境によってどのようなフォントサイズになっているのかは分からないので取得しておく方が無難ですね。
 
他にも確認したい事はたくさんあるのですが、借り物の PCなので今日はこの辺で...。
とりあえずの修正版を W-ZERO3.org Uploaderにアップしておきます。  

2 件のコメント:

匿名 さんのコメント...

初めてコメントさせていただきます。

色々なLAN接続ツールがでている中、 wi-fi info のような、TODAYアイコンもクールでしかもバックグラウンドで機能するワンタッチでシンプルなソフトは大変重宝して使わせて戴いてます。

で、ひとつ要望なのですが。BBモバイルポイント等公衆無線lanは接続後、ブラウザ上で一度ログインしなければならないのですが、それもあらかじめ設定して自動で繋ぐようにはできないのでしょうか。。

某企業がベータで配布しているものはいちいち機動されてしまうので好みません。あんまり多くのアプリを同時稼働させたくないですし、接続ごときにダイアログで確認しなければなりません。

現状では WI-FI INFO と HATAPY さんの Air Login というソフトと併用して yahoo BB モバイルポイント 等で接続しています。

勝手にリクエストして申しわけないのですが気にとめておいていただけると光栄です。

sg

kazuaki さんのコメント...

sgさん こんばんは。

WifiInfoのアイコンを褒めていただいたのははじめてです。
ありがとうございます。

BBモバイルポイントのページを見てみました。
よくわかってないのですが、httpのpostメソッドあたりで ID/パスワードを送っているのでしょうか。

どこかでログインページでも見て来ようかと思ったのですが、エリア情報を見ると県下で私の住んでいる市だけがサービス対象外でした...。
今度遠出したときにでも覗いてみますね。