用心服务 创造品牌

首页 | 公务员 | 报关员 | 计算机 | 证券师 | 研究生 | 成考 | 自考 | 高考 | MBA | 英语 | 会计师 | 导游 | 医师 | 精算师 | 经纪师

您现在的位置: 21世纪考试网 >> 认证类考试 >> 计算机等级考试 >> 考试动态 >> 正文 21世纪考试网助你一臂之力!

   考试动态

Dephi资源文件中高级应用篇

来源:www.21ks.net  作者:佚名 更新时间:2008-6-26 18:49:48


  在上次,我们谈到了Dephi中资源文件使用详解以及Dephi资源文件的初级应用篇,在您对Dephi资源文件有了一定的了解后,我们现在来谈一下Dephi资源文件的中、高级应用篇。

  中级应用篇

  上面我们已经知道如何把一副BMP图像从资源文件里面读出来,但是BMP文件太大了,JPG文件应用的相对较多.那么如何把JPG图像读出来呢?用资源文件加流方式即可。具体方法如下:

  1.MyJpg JPEG My.JPG

  2.

  Var
  Stream:TStream;
  MyJpg:TJpegImage;
  Begin
  Stream:=TResourceStream.Cceat(HINSTANCE,'MyJpg','JPEG');
  Try
  MyJpg:=TJpegImage.Create;
  Try
  MyJpg.LoadfromStream(Stream);
  Image1.Picture.Assignc(MyJpg);
  Finally
  MyJpg.Free;
  end;
  Finally
  Stream.Free;
  end;
  end;

  读取其它图片文件也是一样的.比如说gif动画文件,当然前提是你有一个gif.pas,这个单元很多站点都有的,可以自己去找找。实际应用中我还发现用上面的代码可以直接显示资源文件中的ICON和BMP。

  说到图形处理,实际上还可以用Delphi创建、调用纯图标资源的DLL.比如说你可以看看超级解霸目录下的Dll,很多就是纯图标资源而已。具体方法如下:

  1:创建一个Hicon.RES文件,这里不再重复.

  2:新建一文本文件Icon.dpr,内容如下:

  library Icon;
  {$R Icon.RES}
  begin
  end

  用Delphi打开编译即可得到Icon.dll.

  3:实际调用方法如下:

  ......
  Private
  Hinst:THANDLE;
  ......
  Var Hicon:THANDLE;
  begin
  Hinst:=Loadlibrary('Icon.dll');
  If Hinst=0 Then Exit;
  Hicon:=Loadicon(Hinst,Pchar(Edit1.Text));
  If Hicon<>0 Then Image1.Picture.Icon.Handle:=Hicon;
  FreeLibrary(Hinst);
  end;

  如果你的程序想在国际上供使用不同语言的人使用的话,用Dll来存放字符资源将是一个好方法.因为Dll不象ini文件那样可以被人随便修改,特别是有时侯如果想保存一些版权信息的话用Dll就再好不过了。比如说你准备开发一个"汉字简繁体翻译器"软件,准备提供Gb32,Big5码和英文三种语言菜单给用户,那么你可以试试用Dll来保存字符资源.

  我们需要建立三个Dll.第一步当然是写Rc文件,举Gb32码为例,内容如下:

  /*MySc.rc*/
  #define IDS_MainForm_Caption 1
  #define IDS_BtnOpen_Caption 2
  #define IDS_BtnSave_Caption 3
  #define IDS_BtnBig5_Caption 4
  #define IDS_BtnGb32_Caption 5
  #define IDS_BtnHelp_Caption 6
  #define IDS_Help_Shelp 7
  Stringtable
  {
  IDS_MainForm_Caption,"汉字简繁体翻译器"
  IDS_BtnOpen_Caption,"打开文件"
  IDS_BtnSave_Caption,"保存文件"
  IDS_BtnBig5_Caption,"转换成Big5"
  IDS_BtnGb32_Caption,"转换成Gb32"
  IDS_BtnHelp_Caption,"帮助"
  IDS_Help_Shelp,"输入文字或打开文件后按需要点击按钮即可转换!"
  }
  第二步是Brcc32编译为Res文件后用上面的方法得到Dll文件,另外两个Dll用同样的方法生成.下面来应用一下:
  新建一个工程,放上五个Button:BtnOpen,BtnSave,BtnBig5,BtnGb32和BtnHelp.还有一个TComboBox:CbSelect用来选择语言种类的.
  具体代码如下:

  unit Unit1;
  interface
  ......
  private
  SHelp: string;
  function SearchLanguagePack: TStrings;
  procedure SetActiveLanguage(LanguageName: string);
  { Private declarations }
  ......
  implementation
  procedure TForm1.CbSelectChange(Sender: TObject);
  begin
  SetActiveLanguage(CbSelect.Text);//调用相应Dll文件读取相应字符.
  end;
  procedure TForm1.FormCreate(Sender: TObject);
  begin
  CbSelect.Items.AddStrings(SearchLanguagePack);//搜索当前目录下所有的Dll文件名称
  end;
  function TForm1.SearchLanguagePack: TStrings;
  var
  ResultStrings: TStrings;
  DosError: integer;
  SearchRec: TsearchRec;
  begin
  ResultStrings := TStringList.Create;
  DosError := FindFirst(ExtractFilePath(ParamStr(0)) + '*.dll', faAnyFile, SearchRec);
  while DosError = 0 do
  begin
  ResultStrings.Add(ChangeFileExt(SearchRec.Name, ''));
  DosError := FindNext(SearchRec);
  end;
  FindClose(SearchRec);
  Result := ResultStrings;
  end;

  procedure TForm1.SetActiveLanguage(LanguageName: string);
  var
  Hdll: Hmodule;
  MyChar: array[0..254] of char;
  DllFileName: string;
  begin
  DllFileName := ExtractFilePath(ParamStr(0)) + LanguageName + '.d

[1] [2] [3] [4] 下一页

 
  • 上一篇认证类:

  • 下一篇认证类:
  • VIP俱乐部 | 我们优势 | 联系我们 | 学习问题 | 会员好评

    公务员考试辅导科目 精讲班 报 名
    主 讲 课 时 讲座
      最新公务员公务员考试辅导热点公务员 姚裕群 30课时 免费试听
      最新公务员注册会计师考试热点公务员 郑庆华 60课时 免费试听
      最新公务员报关员考试辅导热点公务员 覃珍珍 50课时 免费试听
      最新公务员职称英 语辅导热点公务员 王 霞 50-60 免费试听

    认证类录入:小芳老师    责任编辑:小芳老师 

    《Dephi资源文件中高级应用篇》来源于21世纪考试网,欢迎阅读Dephi资源文件中高级应用篇精华版。
       报考公务员所需要的全套资料     收藏全套公务员考试资料 更多>>
      最新公务员计算机等级考试 ·考试动态·报考指南·考试大纲·历年真题·模拟试题·复习资料·心得技巧最新公务员
      最新公务员计算机应用考试 ·考试动态·报考指南·历年真题·模拟试题·复习资料·心得技巧最新公务员
      最新公务员微软认证考试 ·考试动态·心得技巧·学习教程·试题中心·考试介绍最新公务员
      最新公务员Cisco认证考试 ·考试动态·考试指南·模拟试题·考试介绍最新公务员
      最新公务员软件工程师考试 ·软件设计师·数据库工程师·电子商务师·国际商务师·系统分析师·软件架构师·信息处理技术员·信息系统监理师·计算机英语最新公务员
       热 门 资 料 更多>>
     Dephi资源文件中高级应用篇
     
       推 荐 资 料 更多>>

     Dephi资源文件中高级应用篇

       考 试 辅 导 更多>>

       会 员 评 价(关于Dephi资源文件中高级应用篇的评价)
        网站介绍∶小陈老师的21世纪考试网,办的非常成功,极具口碑。全站拥有超过40G教学视频,八百套真题,三千篇模拟测试题,四万套学习资料和全面系统的教学文章。与一般公务员考试相比,我们无须注册、 永久免费提供学习帮助,非常值得备战公务员考试的朋友们学习和参考。
      收藏本站 | 会员好评 | VIP俱乐部 | 联系我们
       相 关 资 料 更多>>
    考试动态Dephi资源文件中高级应用篇
    也谈VFP下客户机访问任意映射服务器
    在VFP下实现点对点通信的基本方法
    怎样在vfp中增加与去除网络联接
    分析数据库的依赖关系
    如何用VFP的dbf进行分布式查询
    查找没有索引的表
    vfp数据库的asp连接
    2008年全国计算机等级考试启用新版教材
    08年起全国计算机等级考试科目及内容调整
    Delphi异常处理与程序调试
    基于Delphi的SocketI/O模型全接触
    Delphi7的XML利器
    开发嵌入式IE浏览器监控程序
    基于Delphi的接口编程入门
    Delphi下利用DDE实现同Word的交互
    用Delphi设计多边形窗体
    不当的SQL语句导致系统不安全
    SQL-Server问题汇编
    代替Like的另一种写法
    SQL-Server非正常删除日志
    2008年Dephi资源文件中高级应用篇
       资料搜索一点通
       课 程 学 习 更多>>

       网 站 辅 导 更多>>
    公务员考试: 新闻·政策·申论范文·精彩面式·行政能力·基础知识·招警考试
    认证类考试: 计算机等级·计算机软件·微软认证·Cisco认证
    学历类考试: 研究生考试·成人高考·自学考试·普通高考·MBA(MPA)考试·英语资料
    资格类考试: 注册会计师·导游证·统一司法·执业医师·精算师·保险经纪人·证券分析师·报关员考试
       热 门 专 题  

       会 员 帮 助  

    Dephi资源文件中高级应用篇
    小雪客服/小艳客服(30分钟 内回答问题)
    QQ咨询业务咨询:569921419 代写文章业务咨询:点击留言 (上午8:30-晚上22:00)

    【查看留言】 【发表留言】


    备案:蜀ICP备05030541号 电话:0825-6699035 (0)13982585788 欢迎批评指正
    VIP俱乐部 | 我们优势 | 联系我们 | 支付平台 | 会员好评 | 友情链接 | 网站地图 | 版权申明 | 会员注册 | 常见问题
    CopyRight © 2006~2010 www.21ks.net All Rights Reserved
    荣誉出品:公务员之家 世纪秘书网 世纪考试网