zoukankan      html  css  js  c++  java
  • 怎样实现窗体的拖放功能

        在C/S程序中,有时候,我们需要需要一个拖放功能,比如打开一个图片,只要我们把这个图片拖放在控件中,就可以打开。这个功能的实现思路如下:

        首先,设置确定你想把这个控件拖放到哪个控件上,找到这个控件,并设置这个控件的AllowDrop属性为True,然后实现这个控件的两个方法,分别是

    DragEnter和DragDrop方法。

       DragEnter方法如下,在这个里面,主要是完成前面的一些预处理。

    private void dkpMain_DragEnter(object sender, DragEventArgs e)
    {
        if (e.Data.GetDataPresent(DataFormats.FileDrop))
        {
            e.Effect = DragDropEffects.Move | DragDropEffects.Copy | DragDropEffects.Scroll;
          
        }
        else
        {
            e.Effect = DragDropEffects.None;
        }
     
    }

    DragDrop方法,主要是实现拖放功能的方法,在这里,我们可以通过e.Data得到拖放过来的数据。代码如下:

    private void dkpMain_DragDrop(object sender, DragEventArgs e)
    {
        if (e.Data.GetDataPresent(DataFormats.FileDrop))
        {
            string[] s = (string[])e.Data.GetData(DataFormats.FileDrop);
            this._btmp = new Bitmap(s[0]);
            this.savefilename = s[0];
            this.pbFill.Image = this._btmp;
        }

    在上面的代码中,我处理的是拖放一张图片,通过s[0]就可以得到这个拖放的图片的全部路径了,知道了这个路径之后,其他的处理就跟普通的是一样的。

  • 相关阅读:
    埋点和用户画像
    HDR 2 数据集预处理
    HDR 1(介绍)
    关于AR
    Android驱动
    修改用户登陆次数
    使用plsql developer报错
    oracle客户端卸载
    项目:搜索查找
    使用BeautifulSoup模块解析HTML(文件example.html)
  • 原文地址:https://www.cnblogs.com/xiaoxiangfeizi/p/2605566.html
Copyright © 2011-2022 走看看