如题,我在一个对话框上添加了一个combobox控件,想在控件里面画入不同粗细程度的实线或者虚线,就这两种格式就行。
然后在旁边的一个bitmap控件中预览选中的线的格式,combobox中的线是直线,预览的bitmap控件中是曲线。我知道应该是响应combobox控件的DRAWITEM,不过,具体怎么编写,我实在不会,因为刚入门,请大侠帮忙写个源码给我,不胜感激,谢谢!!!高分送上!!

解决方案 »

  1.   

    http://www.codeguru.com/cpp/g-m/gdi/gdi/article.php/c3699/这里有一个现成的控件
      

  2.   

    typedef struct tagDRAWITEMSTRUCT {
        UINT   CtlType;
        UINT   CtlID;
        UINT   itemID;
        UINT   itemAction;
        UINT   itemState;
        HWND   hwndItem;
        HDC    hDC;
        RECT   rcItem;
        DWORD  itemData;
    } DRAWITEMSTRUCT;
    这组合框自绘要用到的结构体,
    在DrawItem要用到的,既然有HDC hDC,就可以通过hDC来进行绘图啊
    LineTO()和MoveTO()来绘制直线和虚线(通过CPen类来设置线形)
      

  3.   

    很难说清楚的,具体看孙鑫的第十课很详细的。
    地址:
    http://www.sunxin.org/video/vc.htm
      

  4.   

    有一个方法可以实现你的combobox效果放一个EDIT或STATIC(有边框的)或PICTURE控件,然后在控件右边放一个小按钮,画上向下的尖头,然后电击按钮,谈出一个菜单,菜单可以在资源编辑器里自己画实线和虚线.不知道这样可不可以
      

  5.   

    你的意思就是自己伪造一个combo控件是吧?哈,是挺聪明的办法,不过我要学习一下真正实现的方法啊哈