vb.net textbox1选中的文本,拖放到textbox2?很久没有上这里了,今天看到了这个问题,尝试做了一个;
本例以源文本框TextBox1全部文字作为拖放文字为例,实现拖放
1、向一个窗体中添加两个文本框,分别名为TextBox1,TextBox2 。注意:把TextBox2控件的AllowDrop属性设置成True,这点不要遗漏 。
2、完整的代码如下:
Public Class Form1
Private MouseIsDown As Boolean = False
Private Sub TextBox1_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles TextBox1.MouseDown
'设置一个标志以显示鼠标已按下 。
MouseIsDown = True
End Sub
Private Sub TextBox1_MouseMove(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles TextBox1.MouseMove
If MouseIsDown Then
'开始拖动(将TextBox1的文本内容作为拖放内容) 。
TextBox1.DoDragDrop(TextBox1.Text, DragDropEffects.Copy)
End If
MouseIsDown = False
End Sub
Private Sub TextBox2_DragEnter(ByVal sender As Object, ByVal e As System.Windows.Forms.DragEventArgs) Handles TextBox2.DragEnter
'检查正在被拖放的数据的格式 。
If (e.Data.GetDataPresent(DataFormats.Text)) Then
'显示复制光标(表示是拖放行为) 。
e.Effect = DragDropEffects.Copy
Else
'显示不放置光标(表示不是拖放行为) 。
e.Effect = DragDropEffects.None
End If
End Sub
Private Sub TextBox2_DragDrop(ByVal sender As Object, ByVal e As System.Windows.Forms.DragEventArgs) Handles TextBox2.DragDrop
'粘贴文本(将拖放内容作为TextBox2的文本内容) 。
TextBox2.Text = e.Data.GetData(DataFormats.Text)
End Sub
End Class
vb.net 动态控件如何实现拖动功能VB.NET没写过,C#的倒是经常用,你看看能不能有所启发
void Creact()//创建4*5格=20个按钮的键盘
{
const int width=Convert.ToInt32(this.panel1.Width/20);
const int height=Convert.ToInt32(this.panel1.Width/25);
for(int i=1;i=5;i)
{
for(int j=1;j=4;j)
{
Button b=new Button();
b.Name="btn" i.ToString() j.ToString();
b.Left=40*j;
b.Top=30*i;
b.....//位置设置
b.Text=CortoEnglist(i j 65);//转换字母键函数略写
...
//加入鼠标事件
b.MouseDown =new MouseHandler(btn_mousedown);
b.MouseUp =new MouseHandler(btn_mouseup);
b.MouseLeave =new MouseHandler(btn_mouseleave);
b.MouseMove =new MouseHandler(btn_mousemove);
this.panel1.Controls.Add(b)
}
}
}
public int Bealoon br=false;//判断是否按下全局变量
void btn_mousedown(object sender,MouseEventArgs e)//鼠标按下开始计算
{
br=true;
}
void btn_mouseleave(object sender,MouseEventArgs e) //鼠标移开就结束
{
br=false;
}
void btn_mouseup(object sender,MouseEventArgs e) //鼠标弹起也会结束
{
br=false;//跟移开不重复 , 你按下不松手去按另一个发现他就不会弹起 , 所以要加这个事件
}
void btn_mousemove(object sender,MouseEventArgs e) //按下状态拖动就有效
{
if(br==true)
{
((Button)sender).Left =e.X;
((Button)sender).Top =e.Y;
}
}这样我I就给一组按钮加了拖动状态
VB.net怎么实现运行时鼠标拖动改变控件的大小啊控件是可以显示在里面的,你只要加个label,把label的属性设为visualble=fause就行 。设置鼠标经过头像的mouseHover和mouseLeave事件,当mouseHover时label的属性visualble=true,当mouseLeave时label的属性visualble=fause即可 。窗体的鼠标事件可以设置控件的cursor属性,里面可以选择许多种鼠标图形 。只要是正常的Form都可以改变窗体大小 , 但是无边框的窗体只能用函数改变或者设置属性,在debug后是不能改变的 。拖动窗体需要在窗体的load时间里面写入当鼠标单击不放时的事件即可 , 不难 。
VB.net怎么实现控件拖动的时候显示里面的内容?在控件的MouseDown事件中,记录控件的当前位置和鼠标坐标 , 并设置一个标志变量表示进入拖动状态;在MouseMove事件中,判断如果当前是拖动状态 , 则根据鼠标的当前坐标和MouseDown时的坐标计算出移动量,更改控件位置;在MouseUp事件中清除标志变量 。
vb.net实现控件自由移动Dim i As Integer
For i = 0 To Me.Width - Button1.Width'me为容器vb.net控件拖动,典型的是form1
Button1.Left= 1
Windows.Forms.Application.DoEvents()
Next
原理:不断地变化button1的X轴vb.net控件拖动,使其向右移 , 同样,只要控制好其x,y轴,就可以变化button的变化
如果是做小游戏 , 建议弄成类吧,把其中的左(右)移或对角其它移动弄成其接口,以便操作 。
由于涉及内容太多,不再详述 。原理都一样
【vb.net控件拖动 vb拖动控件时发出声音】关于vb.net控件拖动和vb拖动控件时发出声音的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站 。
推荐阅读
- 阿里云的服务器cpu,阿里云的服务器是谁生产的
- java99除法表代码的简单介绍
- 体育课锻炼下肢游戏视频,体能训练下肢
- 赛车竞速游戏推荐手游仙侠,赛车竞速游戏排行榜pc
- java爱心告白代码 java爱心代码编程
- ERp系统怎么多台电脑使用,erp系统怎么连接打印机
- 航天信息的区块链,航天信息 区块链
- 好root的安卓手机软件,安卓手机root软件下载
- 五子棋设计java代码 java五子棋源代码及uml类图