打印本文 打印本文 关闭窗口 关闭窗口
VB打造超酷个性化菜单(六)
作者:武汉SEO闵涛  文章来源:敏韬网  点击数4905  更新时间:2009/4/23 16:37:47  文章录入:mintao  责任编辑:mintao
隔条
                       
                        Case MSS_DEFAULT                                    '''' 默认样式
                            DrawEdge .hdc, itemRect, EDGE_ETCHED, BF_TOP
                        Case Else                                           '''' 其它
                            hPen = CreatePen(SepStyle, 0, SepColor)
                            hBrush = CreateSolidBrush(BkColor)
                            SelectObject .hdc, hPen
                            SelectObject .hdc, hBrush
                            Rectangle .hdc, itemRect.Left, itemRect.Top, itemRect.Right, itemRect.Bottom
                            DeleteObject hPen
                            DeleteObject hBrush
                    End Select
                End If
            Else
                If Not CBool(MyItemInfo(.itemID).itemState And MIS_DISABLED) Then   '''' 当菜单项可用时
                    If .itemState And ODS_SELECTED Then                         '''' 当鼠标移动到菜单项时
                   
                        '''' 设置菜单项高亮范围
                        If SelectScope And ISS_ICON_TEXT Then
                            itemRect.Left = iconRect.Left
                        ElseIf SelectScope And ISS_TEXT Then
                            itemRect.Left = textRect.Left - 2
                        Else
                            itemRect.Left = .rcItem.Left
                        End If
                       
                       
                        '''' 处理菜单项无图标或为CHECKBOX时的情况
                        If (MyItemInfo(.itemID).itemType = MIT_CHECKBOX Or MyItemInfo(.itemID).itemIcon = 0) And SelectScope <> ISS_LEFTBAR_ICON_TEXT Then
                            itemRect.Left = iconRect.Left
                        End If
                       
                       
                        '''' 画菜单项边框
                        Select Case EdgeStyle
                            Case ISES_NONE                                          '''' 无边框
                           
                            Case ISES_SUNKEN                                        '''' 凹进
                                DrawEdge .hdc, itemRect, BDR_SUNKENOUTER, BF_RECT
                            Case ISES_RAISED                                        '''' 凸起
                                DrawEdge .hdc, itemRect, BDR_RAISEDINNER, BF_RECT
                            Case Else                                               '''' 其它
                                hPen = CreatePen(EdgeStyle, 0, EdgeColor)
                                hBrush = CreateSolidBrush(BkColor)
                                SelectObject .hdc, hPen
                                SelectObject .hdc, hBrush
                          &

上一页  [1] [2] [3] [4] [5] [6] [7]  下一页

打印本文 打印本文 关闭窗口 关闭窗口