zoukankan      html  css  js  c++  java
  • 应用API函数在用户窗体中画圆

    Private Declare Function GetDC Lib "user32" (ByVal hwnd As Long) As Long
    Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
    Private Declare Function DeleteObject Lib "gdi32" (ByVal hObject As Long) As Long
    Private Declare Function CreatePen Lib "gdi32" (ByVal nPenStyle As Long, ByVal nWidth As Long, ByVal crColor As Long) As Long
    Private Declare Function CreateSolidBrush Lib "gdi32" (ByVal crColor As Long) As Long                    '
    Private Declare Function SelectObject Lib "gdi32" (ByVal hdc As Long, ByVal hObject As Long) As Long
    Private Declare Function Ellipse Lib "gdi32" (ByVal hdc As Long, ByVal X1 As Long, ByVal Y1 As Long, ByVal X2 As Long, ByVal Y2 As Long) As Long


    Sub MyCircle(MyObject As Object, pX As Long, pY As Long, pR As Long, lcColor As Long, lcFill As Long)
    'MyObject 指定圆所在的对象
    '
    'pX 圆心在对象体上X轴
    '
    'pY 圆心在对象体上Y轴
    '
    'pR 圆的半径
    '
    'lcColor 圆的轮廓颜色
    '
    'lcFill 圆的填充色

    Dim hdc As Long, hpen As Long, hcolor As Long
    hdc = GetDC(FindWindow(vbNullString, MyObject.Caption))
    hpen = CreatePen(0, 1, lcColor)
    hcolor = CreateSolidBrush(lcFill)
    SelectObject hdc, hpen
    SelectObject hdc, hcolor
    Ellipse hdc, pX - pR, pY - pR, pX + pR, pY + pR
    DeleteObject hpen
    DeleteObject hcolor
    End Sub
    '

    Private Sub UserForm_Click()
    MyCircle UserForm1, 100, 100, 50, vbRed, vbBlue
    End Sub

  • 相关阅读:
    常见逻辑谬误
    4 WPF依赖属性
    11 WPF样式和行为
    17 WPF控件模板
    3 WPF布局
    4.6.3 The LRParsing Algorithm
    4.6 Introduction to LR Parsing: Simple LR
    19 WPF 数据绑定
    分布式系统部署、监控与进程管理的几重境界
    运维知识体系
  • 原文地址:https://www.cnblogs.com/fengju/p/6336285.html
Copyright © 2011-2022 走看看