【问题标题】:How to know how many files are dragged and dropped on the application icon?如何知道在应用程序图标上拖放了多少文件?
【发布时间】:2012-11-17 23:47:59
【问题描述】:

放置在应用程序图标上的文件的名称可在 ParamStr(1) 中找到。

但是,如何知道是否不止一个?因为,如果还有更多,则应显示错误消息,例如:“您只能打开一张图片!”或类似的。

【问题讨论】:

  • @Ken:这是一个答案,不是评论。
  • 谢谢@Ken。答案被接受:)
  • @Andreas:是的,我也这么决定。当我准备好一个时,那里还有另外两个。
  • @SrdjanVukmirica:谢谢。 Flávio 击败我发布答案,所以你正确地接受了他的。 :-)

标签: delphi


【解决方案1】:

Windows 只是像这样执行您的程序:

yourapp.exe "C:\file1.jpg" "C:\file2.jpg"

所以这些文件中的每一个都可以在ParamStr(i) 中找到,其中i 将上升到ParamCount() 返回值。

所以你可以这样做:

procedure TMainForm.FormShow(Sender: TObject);
begin
  if ParamCount > 1 then
  begin
    ShowMessage('You can open only one picture!');
  end
  else
  begin
    MyOpen(ParamStr(1));
  end;
end;

【讨论】:

    【解决方案2】:

    举例回答,每个文件都是一个参数

    var
     i:Integer;
    
    begin
    
      Memo1.Lines.Add(IntToStr(ParamCount));
      for I := 1 to ParamCount  do
        memo1.Lines.Add(paramstr(i))
    
    end;
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-11-06
      • 2011-03-10
      • 2021-11-24
      • 1970-01-01
      • 2011-12-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多