我有一个关于为 OSX Cocoa 应用程序启用“文件打开”菜单项的问题。
我在 AppDelegate 中创建了一个 openDocument 方法,并将菜单项连接到该方法,并验证了当我单击文件打开菜单时该方法被调用。
- (IBAction)openDocument:(id)sender
Run Code Online (Sandbox Code Playgroud)
我的问题是,这真的是实现文件打开菜单功能的方法吗?我一半期望 Cocoa 能够自动显示打开的面板对话框,而不是我必须在 openDocument 方法中编写代码来完成它。难道不是这样吗?
我正在使用控制台应用程序测试一个类,并且在该类中要求用户选择一个文件。我创建一个 OpenFileDialog 类实例,设置过滤器,激活多选并调用 ShowDialog()。我选择一个文件,它返回 true,但 FileName 字段中有一个空字符串,FileNames 中有 0 个项目 string[]。我缺少什么?
这是代码:
private static string[] OpenFileSelector(string extension1)
{
OpenFileDialog op = new OpenFileDialog();
op.InitialDirectory = @"C:\";
op.Title = "Seleccione los archivos";
op.Filter = "|*." + extension1;
op.Multiselect = true;
bool? res = op.ShowDialog();
if (res != null && res.Value) return op.FileNames;
return null;
}
Run Code Online (Sandbox Code Playgroud)
扩展名永远不会为空,我已经尝试过几个文件扩展名。根据记录,我在 Win32 之前使用了 Forms 类,并且运行良好。
我正在创建一个网络应用程序,其中有一个输入字段
<input type="file" ng-model="getfilename" />
和一个按钮
<button ng-click="clickfordetails()">Click Here!</button>
以及<P>{{file}}</p>
当用户从输入字段输入文件后单击按钮时的段落标记,他应该在其中获取文件名{{file}}
这是我的控制器
$scope.clickfordetails=function() {
$scope.file=$scope.getfilename;
}
Run Code Online (Sandbox Code Playgroud)
但是当我将控制器编辑为此时,我无法获取文件名
$scope.clickfordetails=function() {
console.log($scope.getfilename);
}
Run Code Online (Sandbox Code Playgroud)
我的控制台(谷歌浏览器)中的值是 Undefined
我需要怎么做??
我想提供从电脑中任何位置选择文件的选项。目前我明确给出路径如下:
FileInfo existingFile = new FileInfo(@"C:\Users\User_name\Downloads\bank_statement.xlsx");
Run Code Online (Sandbox Code Playgroud)
使用EPPlus操作excel文件。如何直接从所需文件夹中获取文件?控制台应用程序 .NET Core 3.1 C#。
c# openfiledialog console-application .net-core .net-core-3.1
我有一个包含TOpenDialog组件(OpenDialog1)和按钮的表单.
OpenDialog1将ofAllowMultiSelect(of Options)属性设置为true.
单击按钮后,AddFilesToListView执行该方法:
procedure TForm4.AddFilesToListView();
var
ListItem : TListItem;
I: Integer;
F : File;
LengthOfAudio : TDateTime;
previousCursor : TCursor;
begin
previousCursor := Self.Cursor;
Self.Cursor := crHourGlass;
if OpenDialog1.Execute then
begin
for I := 0 to OpenDialog1.Files.Count - 1 do begin
if FileExists(OpenDialog1.FileName) then begin
ListItem:=ListView1.Items.Add;
ListItem.Caption := 'Test';
ListItem.SubItems.Add(ExtractFileName(OpenDialog1.Files[I]));
ListItem.SubItems.Add(ExtractFilePath(OpenDialog1.Files[I]));
end else
raise Exception.Create('File does not exist.');
end;
end;
Self.Cursor := previousCursor;
OpenDialog1.Files.Free;
end;
Run Code Online (Sandbox Code Playgroud)
运行应用程序时,选择的第一个文件,我没有任何问题,但想选择第二个的时候,我得到一个错误说"工程项目3引起的异常类EInvalidPointer与消息'无效的指针操作’."
造成这种情况的原因是什么,我该怎么做?
我想让用户将textarea的当前内容下载到他们计算机上的文本文件中.在过去,我会创建一个指向带有数据的URL的iframe,这将触发文件下载对话框.但是这次数据是客户端.
那么,是否可以让用户下载数据而不发送服务器端?
如何导入和使用本机打开文件对话框?在不使用Windows Forms或WPF的应用程序中,我是否有任何好处?或者只是参考一下?
我使用以下代码从系统硬盘上传图像文件....
private void btnAddimage_Click(object sender, EventArgs e)
{
openFileDialog1.FileName = @"C:\";
openFileDialog1.Filter = "png files (*.png)|*.png|jpg files (*.jpg)|*.jpg|jpeg files (*.jpeg)|*.jpeg|gif files (*.gif)|*.gif";
openFileDialog1.CheckFileExists = true;
if (openFileDialog1.ShowDialog(this) == DialogResult.OK)
{
Image image1 = Image.FromFile(openFileDialog1.FileName);
pbProductImage.SizeMode = PictureBoxSizeMode.StretchImage;
pbProductImage.Image = image1;
}
}
Run Code Online (Sandbox Code Playgroud)
它的工作正常但是当我点击btnaddimage时,文件夹将打开带有扩展名为文件类型的图像(如png和jpeg以及gif和jpeg).
我的问题是....我无法一次看到所有文件类型的图像..
在第一次使用png文件打开文件夹然后我从右下角提供的组合框中选择另一种文件类型,如jpeg ....
当我单击图像按钮以查看所有文件类型图像(而不是一次选择png文件或jpeg文件或gif文件......)时,我需要做什么更改...
任何人都会对此有任何想法..
非常感谢....
我可以检索单个文件的名称,并且我可以在循环代码中使用count来获取所需的值,但是可以在没有迭代的情况下知道这一点.或许,为此定义了一个属性.
我正在开发一个WPF应用程序,用户可以上传照片.我为文件扩展名编写了以下代码.
OpenFIleDialog.Filter = "JPEG Images|*.jpg|PNG Images|*.png|GIF Images|*.gif|BITMAPS|*.bmp|TIFF Images|*.tiff|TIFF Images|*.tif";
Run Code Online (Sandbox Code Playgroud)
以ms画面保存文件时,我们有如下选项

在这里我们可以看到相同的格式(.bmp和.dib)被用于4个选项.
我的问题是可以使用OpenFileDialog完成.如果是这样,怎么样?