2008年10月24日
MFC Grid Control…使い方を忘れてる
グリッドコントロールって、Excel好きな人が多かったり、直感的なインタフェースのため需要が多いんだけど…MS純正はダメダメだったりする(最近はかなり改善されてるけど)。
なので、FlexGridとかサードパーティ製品が結構売れてて使われてたり。昔、FlexGridを選択するか迷った時に最終的に採用したのがCodeProjectで見つけたMFC Grid control。
今度、WindowsCEマシンでグリッドコントロールを使いたいという要望があったのでMFC Grid controlを思い出して調べてみると…ちゃんとCEにも対応してるっぽい
と言うことで、数種ある候補のひとつに入れたのは良いけど…さっぱり使い方を忘れてる
以前使ったコードを見てみると2004年ごろに書いたっぽい。う~ん、4年前忘却の彼方ですね
仕方ないので、そのWindows向けのコードを紐解きながらCE向けにいわゆるチョンプロを書いてみた。エミュレータ上(PocketPC2003だけど)で動いてる雰囲気は以下の画像のような感じ。セルの色やセルに画像などの見た目はもちろん、エディットや選択などの動作もかなり細かく制御できます

まぁ、2.26はβ扱いのようなので2.25を利用したのですが…CE向けにはGridCtrl.cppの以下の行をとりあえずコメントアウトする必要がありました。う~ん、チャンとコードを読んでコメントアウトしたわけじゃないので副作用がないとは言えないです。
902 903 904 905 906 | if (nChar == VK_DELETE) { // CutSelectedText(); この行をコメントアウト } else if (nChar == VK_DOWN) |
まぁ、副作用が見つかった時に考えるとしよう…まだ、正式に採用すると決まったわけじゃないし
VS-FlexGrid Pro Ver.8.0J 1開発ライセンス
FlexGrid for .NET 2.0J 1開発ライセンスパッケージ
TrackBack URL :
Comments(2)


[...] 『MFC Grid Control…使い方を忘れてる』と書いておきながら、一切使い方を書いていなかったので自分用メモ。 [...]
[...] まだ、開発言語が決まってないので(と言ってもC++かC#なんだけど)…C++の場合は「MFC Grid Control…使い方を忘れてる」で書いたMFC Grid controlを使うことに決定。そこでC#版のグリッドコントロールでよいものはないかと探している。C#版と言っても開発対象はWindowsCEなので、.NET Compact Frameworkで動くもの。 [...]