none
winform中,treeview 怎么显示不同大小的图片. RRS feed

答案

  • TreeView 即使 OwnerDraw 也不能显示不同大小的图片吧,Windows 用一个宏控制要显示在 TreeView 上的 ImageList 然后图片大小由 ImageList 控制的。

    QQ 用的就不是 TreeView 控件,它自定义的。


    Mark Zhou
    • 已标记为答案 jieon 2010年4月2日 7:49
    2010年3月30日 8:42
  • treeview 是肯定不可能的了,它的图片只是附带一下的而已。

    qq用的绝对不是treeview,应该属于一大堆图片和label控件的叠加,收起的功能也只是把属下的控件给隐藏掉罢了。估计得全部自己写过了。

    很牵强的一个办法,选中的时候用一个大图片覆盖上去,但是位置什么的就不大好处理了(也许可以在当前节点下面或上面加一个节点来多出点空间,自己节点标题前加几个空格空出点位置),还要处理拖动和滚动,总之不是一件方便的事情。


    霸王
    • 已标记为答案 jieon 2010年4月2日 7:49
    2010年3月31日 9:12
  • 这个用 WPF 超级好实现。不过 Windows Forms 有点难度。用 MFC 的倒是可以试试看。
    Mark Zhou
    • 已标记为答案 jieon 2010年4月2日 7:48
    2010年3月31日 9:52
  • 你好!

         一般这样的界面,还是使用WPF实现比较合适,WinForm并不适合用来开发非标准界面!


    周雪峰
    • 已标记为答案 jieon 2010年4月2日 7:48
    2010年3月31日 15:06
    版主

全部回复

  • TreeView 即使 OwnerDraw 也不能显示不同大小的图片吧,Windows 用一个宏控制要显示在 TreeView 上的 ImageList 然后图片大小由 ImageList 控制的。

    QQ 用的就不是 TreeView 控件,它自定义的。


    Mark Zhou
    • 已标记为答案 jieon 2010年4月2日 7:49
    2010年3月30日 8:42
  • 没有办法吗?...感觉不可能啊

    2010年3月30日 15:47
  • treeview 是肯定不可能的了,它的图片只是附带一下的而已。

    qq用的绝对不是treeview,应该属于一大堆图片和label控件的叠加,收起的功能也只是把属下的控件给隐藏掉罢了。估计得全部自己写过了。

    很牵强的一个办法,选中的时候用一个大图片覆盖上去,但是位置什么的就不大好处理了(也许可以在当前节点下面或上面加一个节点来多出点空间,自己节点标题前加几个空格空出点位置),还要处理拖动和滚动,总之不是一件方便的事情。


    霸王
    • 已标记为答案 jieon 2010年4月2日 7:49
    2010年3月31日 9:12
  • 这个用 WPF 超级好实现。不过 Windows Forms 有点难度。用 MFC 的倒是可以试试看。
    Mark Zhou
    • 已标记为答案 jieon 2010年4月2日 7:48
    2010年3月31日 9:52
  • 你好!

         一般这样的界面,还是使用WPF实现比较合适,WinForm并不适合用来开发非标准界面!


    周雪峰
    • 已标记为答案 jieon 2010年4月2日 7:48
    2010年3月31日 15:06
    版主