2016 - 2024

感恩一路有你

visualstudio怎么添加按钮控件 在VisualBasic中如何拖动窗体或控件?

浏览量:2952 时间:2023-06-04 21:19:58 作者:采采

在VisualBasic中如何拖动窗体或控件?

目前windows下的很多应用都使用图形界面,但是在这样的界面下,Windows原有的标题栏是不能用的,否则会影响界面的美观。那么在没有标题栏的情况下,如何用鼠标拖动一个窗体或者其他控件呢?

其实用API函数调出很容易。让 下面以拖拽Form1为例来谈谈实现方法:

1.创建一个名为test.vbp的新项目;;

2.添加一个名为的模块,并在声明部分添加以下代码:

将函数ReleaseCapture Lib user32()声明为Long

声明函数SendMessage Lib user 32 Alias SendMessage a(ByVal hwnd为Long,ByVal wMsg为Long,ByVal wParam为Long,lParam为Any)为Long

公共构造WM_SYSCOMMAND H112

公共Const SC_MOVE HF012

ReleaseCapture函数用于释放鼠标捕获,SendMessage函数是Windows API中非常重要的一个函数,用于向Windows发送移动窗体的消息。WM_SYSCOMMAND是一个向Windows发送消息的常量。SC_MOVE是一个控制移动表单的常量。请注意,这里SC_MOVE的赋值是HF012,意思是鼠标对象。

3.在窗体的MouseDown过程中添加以下代码:

私有子窗体_MouseDown(按钮为整数,Shift为整数,X为单值,Y为单值)

释放捕获

发送消息Me.hwnd,WM_SYSCOMMAND,SC_MOVE,0

末端接头

ReleaseCapture函数用于释放鼠标捕获,SendMessage函数用于向Windows发送移动窗体的消息。

4、保存并运行程序,按下鼠标,你会发现表格会随着鼠标的移动而移动。

以上介绍了在VB中如何用鼠标拖动窗体。其实拖动一个控件的原理也是一样的。例如,下面的代码可以实现画图框。拖曳:

释放捕获

SendMessage Picture1.hwnd,WM_SYSCOMMAND,SC_MOV

visualstudio中form是什么窗口?

在Windows窗体中,窗体是向用户显示信息的可视表面。如果把可视化程序界面的构建看作是绘图,那么窗体就类似于绘图用的画布,任何图像都可以添加到画布上。通过在窗体上放置控件并开发对用户操作(如鼠标单击或击键)的响应来构建窗口。

窗体 鼠标 函数 WM 控件

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。