草庐IT

GetOpenFileName

全部标签

c++ - 设置了 OFN_ALLOWMULTISELECT 标志的 GetOpenFileName()

我正在尝试使用GetOpenFileName()通用对话框调用来弹出一个对话框并允许用户选择多个文件。我已经设置了OFN_ALLOWMULTISELECT标志,以及OFN_EXPLORER设置,所以我得到了“新样式”文件选择框。当我设置我的OPENFILENAME结构时,我将ofn.lpstrFile指向分配用于保存结果的缓冲区,并将ofn.nMaxFile设置为它的长度。我遇到的问题是,如果用户选择的文件名太多以至于缓冲区会溢出,则对GetOpenFileName的调用会返回FALSE,然后CommDlgExtendedError()会返回FNERR_BUFFERTOOSMALL。这

c++ - GetOpenFileName() 正在干扰 SFML

我创建一个OPENFILENAME:OPENFILENAMEofn;charszFile[260];HWNDhwnd=NULL;//InitializeOPENFILENAMEZeroMemory(&ofn,sizeof(ofn));ofn.lStructSize=sizeof(ofn);ofn.hwndOwner=hwnd;ofn.lpstrFile=(LPWSTR)szFile;ofn.lpstrFile[0]='\0';ofn.nMaxFile=sizeof(szFile);ofn.lpstrFilter=L"PNGFiles\0*.PNG*\0";ofn.nFilterInde

python - QtWidgets.QFileDialog.getOpenFileName 返回一个元组

我最近更新到了适用于Python的新版Qt5。在这样做的过程中,我不得不根据已经发生的一些显着变化来修改我的代码。我想深入了解我创建的这行代码。这感觉像是解决获取string问题的肮脏方式。而不是tuple从功能。(注意行尾的[0])filename=QtWidgets.QFileDialog.getOpenFileName(None,"Open"+key+"DataFile",'.',"(*.csv)")[0]我要filename={str}'C:/.././.../format.csv'不是filename=:('C:/.././.../format.csv','(*.csv)')

python - 如何让 getOpenFileName 记住上次打开的路径?

根据getOpenFileName指令:QStringfileName=QFileDialog.getOpenFileName(this,tr("OpenFile"),"/home",tr("Images(*.png*.xpm*.jpg)"));如何让对话框在关闭时记住上次的路径?tr("OpenFile")中的tr是什么意思?谢谢 最佳答案 如果省略dir参数(或传入空字符串),对话框应该记住最后一个目录:filename=QtGui.QFileDialog.getOpenFileName(parent,'OpenFile',''

c++ - 如何在 QFileDialog 上设置选定的过滤器?

我有一个带有三个过滤器的打开文件对话框:QStringfileName=QFileDialog::getOpenFileName(this,title,directory,tr("JPEG(*.jpg*.jpeg);;TIFF(*.tif);;Allfiles(*.*)"));这将显示一个对话框,其中“JPEG”被选为默认过滤器。我想按字母顺序排列过滤器列表,因此“所有文件”在列表中排在第一位。但是,如果我这样做,“所有文件”是默认选择的过滤器-我不想要。我可以为此对话框设置默认选择的过滤器还是必须使用第一个指定的过滤器?我尝试指定第5个参数(QString)来设置默认选定过滤器,但这

c++ - 如何在 QFileDialog 上设置选定的过滤器?

我有一个带有三个过滤器的打开文件对话框:QStringfileName=QFileDialog::getOpenFileName(this,title,directory,tr("JPEG(*.jpg*.jpeg);;TIFF(*.tif);;Allfiles(*.*)"));这将显示一个对话框,其中“JPEG”被选为默认过滤器。我想按字母顺序排列过滤器列表,因此“所有文件”在列表中排在第一位。但是,如果我这样做,“所有文件”是默认选择的过滤器-我不想要。我可以为此对话框设置默认选择的过滤器还是必须使用第一个指定的过滤器?我尝试指定第5个参数(QString)来设置默认选定过滤器,但这
12