zoukankan      html  css  js  c++  java
  • API学习笔记 LineTo 与 MoveToEx 怎么连线画图

    或许懂API的人觉得这个功能确实太简单了完全不值一提,但是正是这个原因太简单了很多会的人不愿意说,而初识API的人又不会。这就出现了一个小BUG。所以我写博客的原因是为了方便和我一样的菜鸟,大鸟们可以直接无视。

    我有一个疑惑是为什么博客园里面不开VB的专栏,难道正如有点人说的VB被淘汰了????但为什么还是有那么多人在用呢??

    我要求的功能是这样的,第一条线的终点的坐标就是第二条线起点的坐标,貌似就是传说中的连线吗?昨天初识API搞的我晕头转向,还好最后还是解决了。

    废话不多说贴代码:

    ,我是在窗口中写的API  所以定义为Private

    如果和我一样不是很明白API的小菜们,推荐大家去http://tieba.baidu.com/f?kz=626339029 看下。那里面讲的确实有意思。

    Option Explicit
    Private Declare Function MoveToEx Lib "gdi32.dll " (ByVal hdc As Long, ByVal X As Long, ByVal Y As Long, lpPoint As POINTAPI) As Long
    Private Declare Function LineTo Lib "gdi32.dll " (ByVal hdc As Long, ByVal X As Long, ByVal Y As Long) As Long
    Private Type POINTAPI
            X   As Long
            Y   As Long
    End Type
    Dim tempIsDb As Integer

    '这是我自定义的一个函数   其中注释快中的代码是我写死了的,用来测试效果。后面的for循环是我写的动态连线。大家可以把循环去掉

    Private Sub Draw()

            Dim lpPoint     As POINTAPI
            '设置起始点   (10,10)
            MoveToEx Picture1.hdc, 10, 10, lpPoint
           
           
    '        画一根在坐标(110,110)长度为100的直线
    '        LineTo Picture1.hdc, 110, 110
    '
    '        LineTo Picture1.hdc, 210, 110
    '
    ''        LineTo Picture1.hdc, 210, 30
           
           
            Dim i As Integer
            For i = 0 To arrNum - 1
           
               LineTo Picture1.hdc, dataArr(i).X, dataArr(i).Y
           Next
    End Sub

    Private Sub Form_Load()
      
        Call  Draw
      End Sub

  • 相关阅读:
    Base64编码原理分析
    对 js 高程 Preflighted Reqeusts 的理解
    js 跨域 之 修改服务器配置-XAMPP-Apache (nginx 拉到最后!)
    js 模拟 select 的 click 事件
    串讲-解释篇:作用域,作用域链,执行环境,变量对象,活动对象,闭包
    js 匿名函数-立即调用的函数表达式
    Java I/O流输入输出,序列化,NIO,NIO.2
    Java8Lambda表达式
    设计模式之适配器模式
    设计模式之装饰器设计模式
  • 原文地址:https://www.cnblogs.com/kingzx/p/2049586.html
Copyright © 2011-2022 走看看