精华内容
下载资源
问答
  • 2020-12-04 13:03:14

    tk drag & drop files

    tkdnd

    以windows为例

    1. 下载tkdnd windows binary

    http://sourceforge.net/projects/tkdnd/files/

    放在anaconda安装目录下,类似Anaconda3\Library\lib\tkdnd

    注意到,在lib文件夹中,其他的子文件夹,比如tk,里面也有pkgIndex.tcl文件

    参考

    https://wiki.tcl-lang.org/page/TCLLIBPATH#ece20ed7a2a1146a78e8c7a8f4037b14be4626a8ec7292ce129bede23140870b

    其中的《Determining which directory to add to TCLLIBPATH》一节

    2. 下载tkdnd python bindings

    http://tkinterdnd.sourceforge.net/

    运行python bindings的例子,即可成功运行

    另外可以参考:

    https://stackoverflow.com/questions/25427347/how-to-install-and-use-tkdnd-with-python-2-7-tkinter-on-osx

    https://stackoverflow.com/questions/14267900/python-drag-and-drop-explorer-files-to-tkinter-entry-widget

    关于tk的界面设计,可以使用PAGE工具

    http://page.sourceforge.net/

    安装后,启动时需要调用wish.exe,一般可以在anaconda目录中找到tck/tk的环境,修改一下桌面快捷方式即可

    另一个tk界面设计工具,pygubu,使用类似XML格式定义界面,然后导入

    https://stackoverflow.com/questions/14142194/is-there-a-gui-design-app-for-the-tkinter-grid-geometry#answer-29053928

    https://github.com/alejandroautalan/pygubu

    python tk 界面的项目示例

    https://github.com/topics/tkinter-python?l=python&o=desc&s=

    https://github.com/boseji/python-exe-gui-example

    https://github.com/BlackRock404/Elise

    python Qt 界面的项目示例

    https://github.com/lmacken/liveusb-creator/

    https://github.com/kovidgoyal/calibre

    更多相关内容
  • VC实现文件拖拽) E2 f2 G0 x( V7 \* Q" W" I0 B 2009-08-30 21:212 i# Y0 M4 A" k: s" | 在基于对话框的程序中,默认是没有这个消息的。0 T/ R; q$ c2 O: U& i7 Y4 z 1、按下Ctrl+W,弹出类向导对话框,选择Class ...
  • PYQT5 拖拽获取文件路径

    千次阅读 2021-11-30 14:50:24
    在进行获取文件路径的操作时,可以选择使用文件对话框打开一个本地文件,也可以直接将文件拖到窗体上,自动获取此文件的绝对路径。 代码展示 import sys from PyQt5.QtWidgets import * from PyQt5.QtCore ...

    在进行获取文件路径的操作时,可以选择使用文件对话框打开一个本地文件,也可以直接将文件拖到窗体上,自动获取此文件的绝对路径。

    代码展示

    
    import sys
    from PyQt5.QtWidgets import *
    from PyQt5.QtCore import *
    from PyQt5.QtGui import *
    
    
    class example(QWidget):
        def __init__(self):
            super(example, self).__init__()
            # 窗口标题
            self.setWindowTitle('拖拽获取文件路径')
            # 定义窗口大小
            self.resize(500, 400)
            self.QLabl = QLabel(self)
            self.QLabl.setGeometry(0, 100, 4000, 38)
            # 调用Drops方法
            self.setAcceptDrops(True)
    
        # 鼠标拖入事件
        def dragEnterEvent(self, evn):
            self.setWindowTitle('鼠标拖入窗口了')
            self.QLabl.setText('文件路径:\n' + evn.mimeData().text())
            # 鼠标放开函数事件
            evn.accept()
    
        # 鼠标放开执行
        def dropEvent(self, evn):
            self.setWindowTitle('鼠标放开了')
    
        def dragMoveEvent(self, evn):
            print('鼠标移入')
    
    
    if __name__ == "__main__":
        app = QApplication(sys.argv)
        e = example()
        e.show()
        sys.exit(app.exec_())
    

    操作截图

     备注:

    使用文件对话框打开一个本地文本文件

        def openFile(self):
            fname = QFileDialog.getOpenFileName(self, '打开文件','./')
            if fname[0]:
                with open(fname[0], 'r',encoding='gb18030',errors='ignore') as f:
                    self.tx.setText(f.read())

    今日美图

    展开全文
  • 在wpf中实现拖动文件到窗口内并获取文件路径的功能
  • pyqt实现文件拖放获取路径

    千次阅读 2020-12-03 18:34:13
    前言文件拖放自动填充路径操作本应该是个很简单的操作,结果搜到的教程都在讲控件的拖拽,几经折磨后终于算是实现了这个功能吧。操作首先,要知道pyqt的控件有个setAcceptDrops(bool)方法可以设置控件是否接受拖放这...

    前言

    文件拖放自动填充路径操作本应该是个很简单的操作,结果搜到的教程都在讲控件的拖拽,几经折磨后终于算是实现了这个功能吧。

    操作

    首先,要知道pyqt的控件有个setAcceptDrops(bool)方法可以设置控件是否接受拖放这个动作,如果是用qt设计师设计的界面可以看到该属性是默认打开的,既然默认打开,那么理论就应该可以实现文件拖放功能。

    但实际操作时我却发现在IDE里可以拖放,但是到了实际的桌面却无法拖放,这一点我真是无法理解啊。。

    因此我只好去看了一些拖拽的教程,发现在重写一个新的QLineEdit类的情况下是可以使用的,重写的类如下:class MyQLine(QLineEdit):

    """实现文件拖放功能"""

    def __init__(self):

    super().__init__()

    self.setAcceptDrops(True) # 设置接受拖放动作

    def dragEnterEvent(self, e):

    if e.mimeData().text().endswith('.srt'): # 如果是.srt结尾的路径接受

    e.accept()

    else:

    e.ignore()

    def dropEvent(self, e): # 放下文件后的动作

    path = e.mimeData().text().replace('file:///', '') # 删除多余开头

    self.setText(path)

    最关键的是e.mimeData().text()获取路径,这里的mimeData()可以参考官方说明

    还有一个问题就是我是用qt设计师设计界面然后动态导入的,我自己新建了一个单行文本控件后,哪怕控件名字和之前的名字一样,最后生成的界面里还是会出现两个文本框,但我又不想在qt设计师里删除原来的文本框。所以我只好来个移花接木,把原来的文本框删掉并替换成我自己的。self.ui.file_path.deleteLater() # 删除原有的路径框

    self.ui.file_path = MyQLine() # 新建自己的替换原有的

    self.ui.file_path.setPlaceholderText('浏览或拖拽SRT字幕文件到这里')

    self.ui.horizontalLayout_2.addWidget(self.ui.file_path)

    self.ui.horizontalLayout_2.addWidget(self.ui.file)

    针对上面的问题我后来找到了解决方案。

    展开全文
  • webuploader拖拽上传文件或文件夹时,怎么获取文件路径webkitRelativePath。如果通过的方式,是可以获取到里面文件路径,但是拖拽的话,看到里面的路径为空的。// 当有文件被添加进队列的时候uploader.on('...

    webuploader拖拽上传文件或文件夹时,怎么获取到文件的路径webkitRelativePath。如果通过的方式,是可以获取到里面文件的路径,但是拖拽的话,看到里面的路径为空的。

    // 当有文件被添加进队列的时候

    uploader.on('fileQueued', function( file ) {

    console.log(file);

    uploader.md5File( file )

    // 及时显示进度

    .progress(function(percentage) {

    console.log('Percentage:', percentage);

    })

    // 完成

    .then(function(val) {

    // console.log('md5 result:', val);

    });

    });

    uploader.on('uploadBeforeSend',function(object,data,headers){

    console.log(object);

    data.webkitRelativePath=object.file.source.source.webkitRelativePath?object.file.source.source.webkitRelativePath:"";

    console.log(data);

    data.fileId="";

    });

    当我用input控件上传的时候,fileQueued事件触发和uploadBeforeSend事件触发打印均可以获取到文件的路径,而使用拖拽上传的时候则获取到的路径为空。

    展开全文
  • def se():#用按键来执行这个函数,按键执行这个函数后,系统就会弹出选择文件的窗口 path=filedialog.askopenfilename() path=path_.replace("/","\\\\")#通过replace函数替换... print(path)#打印路径出来 ...
  • import tkinter from tkinter.messagebox import showinfo import windnd def dragg(files): msg = ‘\n’.join((item.decode(‘gbk’) for item in files)) # showinfo(‘拖入的文件是:’,msg) print(msg) tk =...
  • # 通过对话框获取文件路径 def getPathByDialog(self): root = tk.Tk() root.withdraw() self.Folderpath = filedialog.askdirectory() #获得选择好的文件夹 #Filepath = filedialog.askopenfilename() #获得...
  • # -*- coding: utf-8 -*- """ Created on Wed Apr 21 11:50:25 2021 获取当前文件的路径 获取当前文件的父目录 获取当前目录的父目录的父目录与datetime1.py... # 获取当前文件路径 current_path = os.path.abspath...
  • 打印self.data时,您应该看到...这是我的代码的略微修改版本,它既打印到stdout的文件路径也打印到文本控件:import wx########################################################################class MyFileDrop...
  • from tkinter import filedialogimport xlrdimport tkinter as tkfrom tkinter import ttkimport windnd# 选择文件def openfile():# sfname = filedialog.askopenfilename(title='选择Excel文件', filetypes=[('...
  • : # 选择文件 selectFileName = tk.filedialog.askopenfilename(title='\u9009\u62e9\u6587\u4ef6') e.set(selectFileName) def show(e_entry): #显示图片 img = cv2.imread(e_entry.get()) cv2.imshow("PICTURE...
  • Python获取Windows用户图片文件夹路径

    千次阅读 2022-03-28 21:17:29
    使用Python获取Windows系统下的默认图片路径、文档路径、下载路径都可以使用以下方法: 只需要更改Pictures为对应名称即可,例如Downloads等。 os.path.join(os.environ['USERPROFILE'],'Pictures')
  • python通过对话框实现文件或文件夹路径的选择并获得路径 import tkinter as tk from tkinter import filedialog '''打开选择文件夹对话框''' root = tk.Tk() root.withdraw() Filepath = filedialog.askopenfilename...
  • frameT = Tk() frameT.geometry('500x200+400+200') frameT.title('选择需要输入处理的文件') frame = Frame(frameT) frame.pack(padx=10, pady=10) # 设置外边距 frame_1 = Frame(frameT) frame_1.pack(pa...
  • PyQt5 - 文件拖拽显示路径

    千次阅读 2021-09-13 16:24:55
    代码 import sys from PyQt5.QtWidgets import * from PyQt5.QtGui import * class Window(QMainWindow): def __init__(self): ... self.setWindowTitle('文件拖入') # ==> 窗口标题 self.resize
  • 当您打印self.data时,应该会看到打印...下面是我的代码的一个稍微修改的版本,它同时打印出指向stdout和文本控件的文件路径:import wx#######################################################################...
  • import sys print(sys.argv) sys.argv[0]为当前程序路径 如['D:/ker/bianl.py'] sys.argv[1]为拖入图标启动运行程序时,拖入的文件或目录。如双击启动则无此项,此时sys.argv长度为1。
  • 2019独角兽企业重金招聘Python工程师标准>>> ...
  • ///拖动文件到窗口移动文件 触发 void dragMoveEvent(QDragMoveEvent *event); ///拖动文件到窗口释放文件触发 void dropEvent(QDropEvent *event); }; #include "CustomLineEdit.h" CustomLineEdit::...
  • 文件拖到python打包的exe文件里,然后将拖拽文件作为参数,进行执行 读sys.argv
  • 1、Python2.x与3.x的input区别input与python3不同,在python2.7中分为input()与raw_input()其中input()返回的是int/float类型数据,输入时可以是1+2,返回3;但如果在input()下输入"one",则同样会返回string类型而...
  • python 获取当前文件夹下所有文件名

    千次阅读 2021-01-14 07:53:16
    /usr/bin/env python# -*- coding: utf-8 -*-import osdef file_name(file_dir):for root, dirs, files in os.walk(file_dir):print(root) #当前目录路径(包含所有子目录)# print("==========...
  • 关于Qt QLineEdit 如何得到拖入其中的文件路径
  • selenium文件上传,执行时,一直提示找不到图片路径,提示报错: SyntaxError: (unicode error) ‘unicodeescape’ codec can’t decode bytes in position 2-3: truncated \UXXXXXXXX escape 排查好久,发现是...
  • file_home = dirname(abspath(__file__)) #获取当前脚本所在路径 if isfile("D:/devtest/aaa.txt"): #判断aaa是否是一个存在的文件 print(True) pathname, _ = splitext("aaa.txt") #分离文件名与扩展名 bnam
  • 最近要用python模拟人的操作给窗口发送拖拽文件的消息,网上搜了一大圈也没搜到现成可用的代码。幸好以前做过vc开发,熟悉点win32编程,于是装上vs和msdn,从消息WM_DROPFILES查起,慢慢得实现了这个功能。 WM_...
  • python tkinter实现文件的拖入功能

    千次阅读 热门讨论 2020-04-23 11:09:59
    tkinter 目前自带有filedialog模块可以实现打开目录选择文件,但是要像我们平时将文件拖入到框内即加载文件就有没有模块加载了, 当然,没有万能的python做不到的,既然源生tkinter 没有,那就借助其他模块喽 引入 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 5,458
精华内容 2,183
关键字:

python拖拽获取文件路径