|
| |
名片设计 CorelDRAW Illustrator AuotoCAD Painter 其他软件 Photoshop Fireworks Flash |
|
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程序在编译和运行时都做了些什么? |
| 快精灵印艺坊 版权所有 |
首页 |
||