快精灵印艺坊 您身边的文印专家
广州名片 深圳名片 会员卡 贵宾卡 印刷 设计教程
产品展示 在线订购 会员中心 产品模板 设计指南 在线编辑
 首页 名片设计   CorelDRAW   Illustrator   AuotoCAD   Painter   其他软件   Photoshop   Fireworks   Flash  

 » 彩色名片
 » PVC卡
 » 彩色磁性卡
 » 彩页/画册
 » 个性印务
 » 彩色不干胶
 » 明信片
   » 明信片
   » 彩色书签
   » 门挂
 » 其他产品与服务
   » 创业锦囊
   » 办公用品
     » 信封、信纸
     » 便签纸、斜面纸砖
     » 无碳复印纸
   » 海报
   » 大篇幅印刷
     » KT板
     » 海报
     » 横幅

运行时拉伸和移动控件的类

 

Public Class Resize

    \\\'移动了吗?

    Private IsMoving As Boolean = False

    \\\'控件最后的宽

    Private ctrlLastWidth As Integer = 0

    \\\'控件最后的高

    Private ctrlLastHeight As Integer = 0

    \\\'控件原来的宽

    Private ctrlWidth As Integer

    \\\'最后的左侧坐标

    Private ctrlLastLeft As Integer

    \\\'最后的顶部坐标

    Private ctrlLastTop As Integer

    \\\'控件原来的高

    Private ctrlHeight As Integer

    \\\'控件的左侧坐标

    Private ctrlLeft As Integer

    \\\'控件的顶部坐标

    Private ctrlTop As Integer

    \\\'光标的左侧坐标

    Private cursorL As Integer

    \\\'光标的顶部坐标

    Private cursorT As Integer

 

    \\\'

    Private Htap As Integer

    Private Wtap As Integer

 

    Private ctrlIsResizing As Boolean = False

    \\\'控件的大小矩形

    Private ctrlRectangle As System.Drawing.Rectangle = New System.Drawing.Rectangle()

    Private ctrl As Control \\\'操作的控件

    Private frm As Form \\\'控件的父亲窗体

    \\\'构造函数

    Public Sub New(ByVal c As Control, ByVal frm As Form)

        ctrl = c

        Me.frm = frm

        \\\'标题栏和横向滚动条以及边框的宽

        Me.Htap = Me.frm.Height - Me.frm.ClientRectangle.Height

        \\\'纵向滚动条和边框的宽

        Me.Wtap = Me.frm.Width - Me.frm.ClientRectangle.Width

        AddHandler ctrl.MouseDown, AddressOf MouseDown

        AddHandler ctrl.MouseMove, AddressOf MouseMove

        AddHandler ctrl.MouseUp, AddressOf MouseUp

    End Sub

 

    \\\'鼠标按下后的处理

    Private Sub MouseDown(ByVal sender As Object, ByVal e As MouseEventArgs)

        If frm Is Nothing Then

            Return

        End If

        MessageBox.Show(e.Y.ToString)

        MessageBox.Show((Me.ctrl.Height - 10).ToString)

        MessageBox.Show(e.X.ToString)

        MessageBox.Show((Me.ctrl.Width - 10).ToString)

        \\\'设置第一次有效单击的范围

        If e.X < Me.ctrl.Width - 10 OrElse e.Y < Me.ctrl.Height - 10 Then

            Me.IsMoving = True

            \\\'指定要绘制的虚线框的坐标(相对屏幕)

            Me.ctrlLeft = Me.frm.DesktopLocation.X + Me.Wtap + Me.ctrl.Left

            Me.ctrlTop = Me.frm.DesktopLocation.Y + Me.Htap + Me.ctrl.Top

本新闻共3页,当前在第1页  1  2  3  

本新闻共2页,当前在第1页  1  2  


返回类别: 教程
上一教程: ASP.NET编程中的十大技巧
下一教程: ASP.NET创建XML Web服务全接触(4)

您可以阅读与"运行时拉伸和移动控件的类"相关的教程:
· 常用的读写ini文件的类
· 控件的拖动和缩放技术全解
· Repeater控件的分页问题
· 容器中控件的拖动
· 精品赏析:一个.NET程序在编译和运行时都做了些什么?
    微笑服务 优质保证 索取样品