カラムヘッダの一部をグループ化したリスト

[戻る]
tib 2003/10/16(木) 18:45:00
相変わらずWinNT4.0sp6(英語版) + VC++5.0sp3, MFC利用という環境です。

ある複数列リストを作りたいのですが、カラムヘッダの一部をグループ化したいのです。
具体的にはこんな感じです。
    ┏━━┯━━━━━━━━┯━━┓
    ┃    │       H2       │    ┃
    ┃ H1 ├──┬──┬──┤ H3 ┃
    ┃    │h2a │h2b │h2c │    ┃
    ┣━━┿━━┿━━┿━━┿━━┫
    ┃Data│Data│Data│Data│Data┃
    ┠──┼──┼──┼──┼──┨
    ┃Data│Data│Data│Data│Data┃
    ┗━━┷━━┷━━┷━━┷━━┛
上図で、ヘッダ部はまず3つに分かれており、それぞれ「H1, H2, H3」とcaptionをつけま
す。そしてH2がさらに3つに分かれてそれぞれ「h2a, h2b, h2c」とcaptionをつけます。
データ部だけを見たら普通の5列から成る表に見えます。

カラムヘッダをクリックしたときにはソート処理を行う...などの要求はないのでその辺
は気にしなくていいのですが、こういうヘッダを持つ表をCListCtrlもしくは他の手段で
どのようにすれば作れるでしょう?

以上、ご教授の程よろしくお願いします。

jkl 2003/10/16(木) 21:37:01
ヘッダを2列にすれば?

    ┏━━┯━━┯━━┯━━┯━━┓
    ┃ H1 │ H2 │ H2 │ H2 │ H3 ┃
    ┠──┼──┼──┼──┼──┨
    ┃    │h2a │h2b │h2c │    ┃
    ┣━━┿━━┿━━┿━━┿━━┫
    ┃Data│Data│Data│Data│Data┃
    ┠──┼──┼──┼──┼──┨
    ┃Data│Data│Data│Data│Data┃
    ┗━━┷━━┷━━┷━━┷━━┛

sugar 2003/10/16(木) 22:08:10
ソート云々の要求がないということであれば、
ヘッダ部はスタティックコントロールを敷き詰めて、
Data部はヘッダなし、境界線なしのリストコントロール、
さらに全体の外枠もスタティックコントロールで境界線をつくれば、
外観的にはさもひとつのコントロールのように見せる事は可能だと思います。

列幅変更も無理ですよ。

tib 2003/10/20(月) 18:06:27
jklさんの案は見栄え的に却下、sugarさんの案は「列幅変更は実装して欲しい」とゴ
ネられて却下となりました。せっかくアドバイスいただいたのに済みません。

で、結局、カラムヘッダを1行にまとめるように仕様変更していただきました。

tib 2003/10/20(月) 18:06:40
[[解決]]
チェック漏れ。

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