リストビューをExcel風にする方法を教えてください

[戻る]
YK 2007/02/08(木) 10:57:17
リストビューをExcel風にする方法を教えてください。
シートの上と左にExcelと同じようにグレー(ボタン?)を表示したいのです。
カラム追加で上側は表示できるのですが、左側に表示する方法がわかりません。
参考までに今使っているコードを添付します。

--------------------------------------------------------------------------------
-------------
        // リストビュー生成
            hList1 = CreateWindowEx(    0,
                    WC_LISTVIEW, "",
                    WS_CHILD | WS_VISIBLE | 
LVS_REPORT,
                    0, 0, 0, 0,
                    hChild,
                    (HMENU)ID_LISTVIEW,
                    hInst,
                    NULL);
            // リストビューの拡張フォーマット設定
            dwStyle = ListView_GetExtendedListViewStyle(hList1);
            dwStyle |= LVS_EX_FULLROWSELECT |LVS_EX_GRIDLINES;
            ListView_SetExtendedListViewStyle(hList1, dwStyle);
            
            // リストビューのカラムを設定
            lvcol.mask = LVCF_FMT | LVCF_WIDTH | LVCF_TEXT | 
LVCF_SUBITEM;
            lvcol.fmt = LVCFMT_LEFT;

            lvcol.cx         = 50;
            lvcol.pszText     = "No.";
            lvcol.iSubItem     = 0;
            ListView_InsertColumn(hList1, 0, &lvcol);
            
            lvcol.cx         = 200;
            lvcol.pszText     = "Variable Name";
            lvcol.iSubItem     = 1;
            ListView_InsertColumn(hList1, 1, &lvcol);
--------------------------------------------------------------------------------
-------------
宜しくお願いします。

Ban 2007/02/08(木) 13:23:54
リストビューを望む形にする方法は、
掲示板で簡単に説明できるほどお手軽ではないでしょう。
独力でできないなら、多分諦めて別の方法を探すことをお勧めしたいくらい、
凝れば凝るほど面倒です。

比較的お手軽な「MSFlexGrid」を調べてみてください。

# MSはExcelの開発にどれだけのコストを払ってきたのだろうか…。

Ban 2007/02/08(木) 13:27:28
カスタムドローとかオーナドローとか駆使すれば、リストビューでもそれっぽくは
できるかと思いますが、多分、望むような品質のものにはならないと思います。

少なくとも、リストビューにそのようなことを簡単にするオプションはないです。
自前でがんばることになります。

ちょっと外見が似てるというだけで、機能が違うものの機能を似せようとがんばることが
労力に見合うとは思えません。

YK 2007/02/08(木) 17:58:47
リストビューは無理そうですね。
ネットで調べてもExcel風に表示している所がなかったのでもしやとは思いましたが。

「MSFlexGrid」を使って再挑戦してみたいと思います。
参考になるHPなどがありましたら、また教えて頂ければ幸いです。

古いスレッドには追加発言できません。