用OpenGL渲染BUTTON

    技术2022-05-19  24

    类似于自绘BUTTON,首先从CButton派生一个类COpenGLBtn,重载它的虚构函数DrawItem,在里面最简单的几句话

    void COpenGLBtn::DrawItem(LPDRAWITEMSTRUCT lpDrawItemStruct) { glClearColor(1.f,1.f,0.f,1.f); glClear(GL_COLOR_BUFFER_BIT); ::SwapBuffers (hDC->GetSafeHdc ()); }

    如果要做出三维的按钮,可以自己设计模型。其余的设置就是OpenGL配置了。

    创建Btn

    m_btn.Create (_T("MyOpenGLBtn"),WS_CHILD|WS_VISIBLE|BS_PUSHBUTTON|BS_OWNERDRAW, CRect(10,10,200,50), this, IDC_MYBTN);


    最新回复(0)