Demo学习: FileUpload

摘要:
FileUpload文件上载。了解如何使用TUniFileUpload控件。TUniFileUpload:Filter:文件类型筛选的主要属性。此属性在web模式下无效。当前版本的UniGUI没有实现此功能。这是一个有用的函数。我希望作者能尽快实现这一功能;MaxAllowedSize:设置文件上传的最大大小;消息:标题和消息文本可以翻译成中文。此属性不完整,尚未提取单个消息文本;TUniFileUpload控件最大的问题是它不支持文件批量上载!

FileUpload

文件上传,学习TUniFileUpload控件的使用

Demo学习: FileUpload第1张

TUniFileUpload主要属性:

Filter: 文件类型过滤,这个属性在web模式下是无效的,UniGUI目前版本还没有实现此功能,比较有用的功能,希望作者尽快实现此功能;

MaxAllowedSize: 设置文件最大上传尺寸;

message标题以及消息文本,可翻译成中文,这个属性也做的不完整,个别消息文本没有提取出来;

TUniFileUpload控件目前最大的问题是不支持文件批量上传!

事件:OnCompleted(Sender: TObject; AStream: TFileStream)

负责文件上传完成后的处理,是把文件流保存到目标路径;

procedureTMainForm.UniFileUpload1Completed(Sender: TObject; AStream: TFileStream);
varDestName : string;
  DestFolder : string;
begin
  if IsImage then
  beginUniImage1.Picture.LoadFromFile(AStream.FileName);
    UniLabel3.Caption:='File Name: '+UniFileUpload1.FileName;
  end
  else
  beginDestFolder:=UniServerModule.StartPath+'UploadFolder';
    DestName:=DestFolder+ExtractFileName(UniFileUpload1.FileName);
    UniLabel4.Caption:='File Name: '+UniFileUpload1.FileName;
    CopyFile(PChar(AStream.FileName), PChar(DestName), False);
    ShowMessage('File: '+UniFileUpload1.FileName+'Uploaded to folder: '+DestFolder);
  end;
end;

免责声明:文章转载自《Demo学习: FileUpload》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Libevent::evhttp服务器超哥笔记-- 文件操作与文件结构(2)下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

Android系统架构(图解)

下图是 Android 操作系统的架构,架构包括 4 层,由上到下依次是应用程序层、应用程序框架层、核心类库和 Linux 内核。其中,核心类库中包含系统库及 Android 运行环境。 图1  Android 操作系统的架构 应用程序层 Android 装配了一个核心应用程序集合,包括 E-mail 客户端、SMS 短消息程序、日历、地图、浏览器、联...

WCF学习笔记1(体系架构和行为扩展)

引用《WCF服务编程》里的一段话:“以WCF为基础框架搭建面向服务的企业级应用程序,以WF工作流引擎支撑企业应用中业务流程的传递与控制,以Cardspace和WCF固有的安全测罗保证企业信息的安全,最后以ASP.NET AJAX,WPF和SILVERLIGHT技术丰富客户端界面的绚丽表现,从而改善企业客户对应用程序的体验,这就是微软实现企业级应用的霸业宏图...

解决Android Toast重复显示等待时间过长的问题

Toast是一种简易的消息提示框,它无法获取焦点,按设置的时间来显示完以后会自动消失。一般用于帮助或提示。 当触发点击事件显示toast信息时,如果设置了时间长短类型为LENGTH_LONG,虽然回到后台运行,但是依然会显示toast信息,尤其是当连续点击时,toast就会排队等待直到所有toast显示完毕,这种界面的用户体验是很差的。 → 1toast...

在网上看到这篇文章还不错,OnDrawItem与DrawItem讨论

我在学习中经常遇到要重写DrawItem()的情况,但又有一个WM_DRAWITEM消息,它们是什么样的关系呢。如果我们要重写一个CButton取名为CMyButton,我们可以重写CMyButton的DrawItem()函数来实现我们的 需求,但CMyButton::DrawItem()是在什么时候调用呢?它是在它的宿主类的OnDrawItem()中被调...

C# 委托实例(跨窗体操作控件)

今天研究了一下,在C#里面却是可以不用自定义消息这么复杂的方法来实现跨窗体调用控件,C#有更好的办法就是委托。 效果描述:有两个窗体,FORM1(一个名为“打开form2”的button控件)和FORM2(一个名为“改变form1颜色“的button控件)。启动时,FORM1中点击button控件“打开form2””使FORM2显示出来。点击FORM2中的...

项目字典表设计

系统字典表,一半涉及两张表:字典1:n字典项。是一对多的关系 字典表: 字典项表: 如,消息类型,在字典表就是 在字典项对应的多条: 字典表sql: CREATE TABLE `sys_dict` ( `id` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,...