端的に言えば、日記です。
もともと 開発日誌 Theme.4 から始まった企画。ファイルビュアーと連結させてみようかなと思ったわけで。んで、ある程度できたのですよ。ビュアーも。んでも、ちと問題が。下の実行図を見てみてください。
...汚いっちゅーの! 確かにプレビューだけでいいから別にアレなんだけど、画像ビュアー失格 の烙印を早々と押されてしまった気分で。色が汚いのに、あまり256色PNGへの減色の影響はないです。もともとこんな風にしか鳴りません。わざわざ WindowsAPI を調べて、StretchBlt 関数は HALFTONE を使ったら4点補完をしてくれるからか、縮小がちと遅いけど綺麗になるっていうのを見かけたから、それを使っています。それで、この画質+速度だとしたら... うぅ。以下のようにしているんだけど、このソースに明らかな誤りを発見されたら、どなたか教えてください。
Sub hsListAdd(no As Integer, strFolder As String, strFile As String) Dim ret As Long ' ListItem オブジェクトを追加するための変数を作成します。 Dim itmX As ListItem ' 最終レコードまで、ListItem オブジェクトを追加します。 Dim point As POINTAPI point.x = 0 point.y = 0 With frmImage .picTmp.Width = cfgWidth .picTmp.Height = cfgHeight .picSize.Picture = LoadPicture(strFolder & "\" & strFile) ret = SetStretchBltMode(frmImage.picSize.hdc, HALFTONE) ret = SetBrushOrgEx(.picTmp.hdc, 0, 0, point) ret = StretchBlt(.picTmp.hdc, 0, 0, cfgWidth, cfgHeight, _ .picSize.hdc, 0, 0, .picSize.Width, .picSize.Height, _ vbSrcCopy) If (.imlPicture.ListImages.Count < no) Then Call .imlPicture.ListImages.Add(no, "key" & Str(no), .picTmp.Image) End If End With End Sub
ほかに、IE5 + ActiveX を使った方法も試してみました。IE5 のエンジンは流石に美しいし、高速です。GIF 表示しても、UNYSIS に文句言われません(--; 画像リストを動的に作成できるし、ばんばんざいです。が、こっちにはより大きな欠点。セキュリティーレベル最低 にしないと動作しませんっ! そりゃそうだ、ファイルを直接覗いているんだもん。こんな事を外部からされたらクラック以外の何者でもない。ボツ。
とりあえずこのへんでやる気が尽きて、ついでにこのへんの機能があからさまに非本質的と言うことに気づいた(^^; ので、もう画像表示はやめちゃえ☆ という結論に至りました(^^;; そうして、2001年5月2日、ようやく重い腰があがったのです、‘たぐ☆あしすと’開発のはじまりです。
名前が平仮名なのは、もういつものことです。☆が入っているのは... なんでなんでしょうか? ふとインスピででてきたのでよくわかりません。まちばりあかね☆ さん さんの影響だったりして(^^;;