打印本文 打印本文 关闭窗口 关闭窗口
VB打造超酷个性化菜单(六)
作者:武汉SEO闵涛  文章来源:敏韬网  点击数4905  更新时间:2009/4/23 16:37:47  文章录入:mintao  责任编辑:mintao
- iconRect.Top + 1 - 16) / 2 - 1, MyItemInfo(.itemID).itemIcon, 16, 16, 0, 0, DI_NORMAL
                            End Select
                        Else
                            '''' CHECKBOX型菜单项图标效果
                            If MyItemInfo(.itemID).itemState And MIS_CHECKED Then
                                DrawIconEx .hdc, iconRect.Left + 2, iconRect.Top + (iconRect.Bottom - iconRect.Top + 1 - 16) / 2, MyItemInfo(.itemID).itemIcon, 16, 16, 0, 0, DI_NORMAL
                            End If
                        End If
                   
                    Else                                                        '''' 当鼠标移开菜单项时
                       
                        '''' 画菜单项边框和背景(清除)
                        If BarStyle <> LBS_NONE Then
                            itemRect.Left = barRect.Right + 1
                        Else
                            itemRect.Left = 0
                        End If
                        hBrush = CreateSolidBrush(BkColor)
                        FillRect .hdc, itemRect, hBrush
                        DeleteObject hBrush
                       
                       
                        '''' 画菜单项文字
                        SetTextColor .hdc, TextEnabledColor
                        DrawText .hdc, MyItemInfo(.itemID).itemText, -1, textRect, DT_SINGLELINE Or DT_LEFT Or DT_VCENTER
                       
                       
                        '''' 画菜单项图标
                        If MyItemInfo(.itemID).itemType <> MIT_CHECKBOX Then
                            DrawIconEx .hdc, iconRect.Left + 2, iconRect.Top + (iconRect.Bottom - iconRect.Top + 1 - 16) / 2, MyItemInfo(.itemID).itemIcon, 16, 16, 0, 0, DI_NORMAL
                        Else
                            If MyItemInfo(.itemID).itemState And MIS_CHECKED Then
                                DrawIconEx .hdc, iconRect.Left + 2, iconRect.Top + (iconRect.Bottom - iconRect.Top + 1 - 16) / 2, MyItemInfo(.itemID).itemIcon, 16, 16, 0, 0, DI_NORMAL
                            End If
                        End If
                   
                    End If
                Else                                                                 '''' 当菜单项不可用时
                   
                    '''' 画菜单项文字
                    SetTextColor .hdc, TextDisabledColor
                    DrawText .hdc, MyItemInfo(.itemID).itemText, -1, textRect, DT_SINGLELINE Or DT_LEFT Or DT_VCENTER
                   
                    '''' 画菜单项图标
                    If MyItemInfo(.itemID).itemType <> MIT_CHECKBOX Then
                        DrawState .hdc, 0, 0, MyItemInfo(.itemID).itemIcon, 0, iconRect.Left + 2, iconRect.Top + (iconRect.Bottom - iconRect.Top + 1 - 16) / 2, 0, 0, DST_ICON Or DSS_DISABLED
                    Else
                        If MyItemInfo(.itemID).itemState And MIS_CHECKED Then
                            DrawState .hdc, 0, 0, MyItemInfo(.itemID).itemIcon, 0, iconRect.Left + 2, iconRect.Top + (iconRect.Bottom - iconRect.Top + 1 - 16) / 2, 0, 0, DST_ICON Or DSS_DISABLED
                        End If
                    End If
                   
                End If
            End If
           
  &n

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

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