zoukankan      html  css  js  c++  java
  • delphi res 字符串资源

    delphi res 字符串资源 (2011/12/10 19:19:36)

    //res 字符串资源 
    //rc 文件:
    StringTable
    begin
    0 "AAAA"
    1 "BBBB"
    2 "CCCC"
    3 "DDDD"
    end

    //也可以这样写:
    StringTable
    begin
    0,"AAAA"
    1,"BBBB"
    2,"CCCC"
    3,"DDDD"
    end

    //还可以这样写:
    StringTable
    {
    0,"AAAA"
    1,"BBBB"
    2,"CCCC"
    3,"DDDD"
    }


    {严格的头可能是这样写: STRINGTABLE DISCARDABLE}


    --------------------------------------------------------------------------------

    //程序代码:

    unit Unit1;

    interface

    uses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs, StdCtrls;

    type
      TForm1 = class(TForm)
        Memo1: TMemo;
        procedure FormCreate(Sender: TObject);
      end;

    var
      Form1: TForm1;

    implementation

    {$R *.dfm}

    procedure TForm1.FormCreate(Sender: TObject);
    begin
      Memo1.Clear;
      with Memo1.Lines do
      begin
        Add(LoadStr(0));
        Add(LoadStr(1));
        Add(LoadStr(2));
        Add(LoadStr(3));  
      end;
    end;

    end.

    delphi resourcestring 资源串常量 (2011/12/10 19:19:38)

    delphi resourcestring 资源串常量 (2011/12/10 19:19:38)

    //resourcestring 资源串常量
    {
    用resourcestring 指令定义的字符串变量将被保存到程序资源的字符串表中
    有趣的是,当你用资源编辑器打开执行文件时,
    你会在程序资源中看到你所定义的字符串。
    这意味着字符串并没有进入编译代码,而是保存在执行文件 (EXE文件)的一个单独区域。
    }
     
    procedure TForm1.Button1Click(Sender: TObject);
    resourcestring //支持所有字符类型的数据
        str1 = 'delphi';
        str2 = 'XE';
    begin
        showmessage(str1+str2);
    end;

    delphi RES存取资源文件中的AVI无声动画文件 (2011/12/10 19:19:39)

    //RES存取资源文件中的AVI无声动画文件 
    //记事本编写 rc脚本
    MyAVI_01 AVI "FlickAnimation.avi"    

    //保存为 AviRES.RC
    //brcc32编译 AviRES.RES
    //加入资源 
            {$R AviRES.RES}

    //播放AVI代码
    procedure TForm1.Button6Click(Sender: TObject);
    begin
      Animate1.ResName :='MyAVI_01' ; //资源标识
      Animate1.Active :=True ;
    end;

    delphi RES存取资源文件中的BMP图像 (2011/12/10 19:19:40)

    //RES存取资源文件中的BMP图像 
    1.编写rc脚本文本,保存为 BmpRes.RC
    BMP1 bitmap "aaa.bmp"
    BMP2 bmpType "bbb.bmp"


    2 brcc32 C:UsersAdministratorDesktopBmpRes.RC //brcc32.exe文件在delphi目录下
      将 BmpRes.RC 编译成 BmpRes.RES 资源文件
    3 把 BmpRes.RES 文件剪切到 delphi项目文件中

    4{$R *.dfm} 下面引入资源 {$R BmpRes.RES}

    //调用 资源文件中的BMP文件
    //bitmap方法 (RC格式 BMP2 bitmap "bmp02.bmp")
    procedure TForm1.Button1Click(Sender: TObject);
    begin
        Image1.Picture.Bitmap.LoadFromResourceName(HInstance,'BMP1');
    end;

    //bmpType方法 (RC格式 BMP1 bmptype "bmp01.bmp")
    procedure TForm1.Button2Click(Sender: TObject);
    var
       ResStream: TResourceStream;
    begin
       ResStream := TResourceStream.Create(HInstance, 'BMP2', 'bmptype');
       Image1.Picture.Bitmap.LoadFromStream(ResStream);
       ResStream.Free;
    end;

    delphi RES存取资源文件中的Cursor光标文件 (2011/12/10 19:19:41)

    //RES存取资源文件中的Cursor光标文件 
    {
    Screen.Cursors[]是一个光标数组,使用光标文件我们可以将定制的光标加入到这个属性中。
    因为默认的光标在数组中索引值是0,
    所以除非想取代默认光标,最好将定制的光标索引值设为1。 
    }

    mycur1 cursor "repair.cur"
    mycur2 cursor "attack.cur"

    保存为 CursorsRes.rc
    brcc32.exe编译 CursorsRes.RES
    加入资源 {$R CursorsRes.RES}

    procedure TForm1.Button1Click(Sender: TObject);
    begin
       Screen.Cursors[1] :=LoadCursor(hInstance,'mycur1');//资源标识符
       Image1.Cursor :=1; //Image控件的光标
    end;

    procedure TForm1.Button2Click(Sender: TObject);
    begin
       Screen.Cursors[2] :=LoadCursor(hInstance,'mycur2');//资源标识符
       self.Cursor :=2; //当前窗体的光标
    end;

    delphi RES存取资源文件中的ICON图标文件 (2011/12/10 19:19:42)

    //RES存取资源文件中的ICON图标文件 
    1 创建rc文件{请确保桌面上有图标文件aaa.ico bbb.ico}
    ico1 ICON aaa.ico
    ico2 ICON bbb.ico
    命名为 MyRes.rc
    2 编译RC文件成RES文件
    brcc32 C:UsersAdministratorDesktopMyRes.rc
    产生了文件 MyRes.RES

    3{$R *.dfm}加入资源文件
    {$R MyRes.RES}


    4 调用RES里面的图标文件
    procedure TForm1.Button1Click(Sender: TObject);
    begin
      Application.Icon.Handle := LoadIcon(HInstance, 'ico1');
    end;

    procedure TForm1.Button2Click(Sender: TObject);
    begin
      Application.Icon.Handle := LoadIcon(HInstance, 'ico2');
    end;

    procedure TForm1.Button3Click(Sender: TObject);
    begin
      Application.Icon :=nil;
    end;

    delphi RES存取资源文件中的JPEG图像 (2011/12/10 19:19:43)

    //RES存取资源文件中的JPEG图像 
    1.编写rc脚本文本

    jpg1 jpgtype "jpg01.jpg"
    用记事本编写 RC 脚本文本,保存为 jpgRes.RC

    2 brcc32 C:UsersAdministratorDesktopjpgRes.RC //brcc32.exe文件在delphi目录下
      将 jpgRes.RC 编译成 jpgRes.res 资源文件{资源文件必须放在同一目录}
    3 把 jpgRes.RES 文件剪切到 delphi项目文件中

    4{$R *.dfm} 下面引入资源 {$R jpgRes.res}
    {当你有多个资源文件,依次加入}

    //存取资源文件中的JPEG图像
    //出现了问题
    uses JPEG;
    procedure TForm1.Button1Click(Sender: TObject);
    var
      jpg: TJPEGImage;
      ResStream: TResourceStream;
    begin
      jpg := TJPEGImage.Create;
      ResStream := TResourceStream.Create(HInstance, 'jpg1', 'jpgtype');
      jpg.LoadFromStream(ResStream);
      Image1.Picture.Assign(jpg);
      jpg.Free;
      ResStream.Free;
    end;

    delphi RES存取资源文件中的PNG图像 (2011/12/10 19:19:43)

    //RES存取资源文件中的PNG图像 
    1.编写rc脚本文本

    imgAuto1 PNG "C:UsersAdministratorDesktop自动1.png"
    imgAuto2 PNG "C:UsersAdministratorDesktop自动2.png"
    imgMore1 PNG "C:UsersAdministratorDesktop更多颜色1.png"
    imgMore2 PNG "C:UsersAdministratorDesktop更多颜色2.png"

    用记事本编写 RC 脚本文本,保存为 jpgRes.RC

    2 brcc32 C:UsersAdministratorDesktoppngRes.RC //brcc32.exe文件在delphi目录下
      将 pngRes.RC 编译成 pngRes.res 资源文件{资源文件必须放在同一目录}
    3 把 pngRes.RES 文件剪切到 delphi项目文件中

    4{$R *.dfm} 下面引入资源 {$R pngRes.res}
    {当你有多个资源文件,依次加入}

    //存取资源文件中的PNG图像

    //  SetImgPicture(img_Auto1,'ImgAuto2','png');
    procedure SetImgPicture(Image:TImage;ResName:string;ResType:PWideChar);
    var
      PNG: TPngImage;
      RES: TResourceStream;
    begin
      png := TPngImage.Create;
      RES := TResourceStream.Create(HInstance, ResName, ResType);
      PNG.LoadFromStream(RES);
      Image.Picture.Assign(PNG);
      PNG.Free;
      RES.Free;
    end;
     
    些方法对这个无效 Project - Resources and Images
     
     

    delphi Res将Wav声音文件打包到程序中 (2011/12/10 19:19:44)

    //Res将Wav声音文件打包到程序中 
    STP1.建立一个rc文件; {标识符 声音格式 声音文件} {支持中文名称}
        新建一个记事本 输入 click wave "click.wav" 把本文件保存为 *.rc格式的文件;这里我保存为SOUND.RC
        注:声音文件click.wav 和SOUND.RC必须在同一目录下
    STP2.将rc文件转换为res文件;
        把delphi目录Bin里的brcc32.exe文件复制到C:Windows目录下,开始运行:输入 cmd打开命令栏之后输入:brcc32 C:UsersAdministratorDesktopSOUND.RC
    这样就编译了一个SOUND.RES文件

    STP3.在Uses下面引入 MMSystem;
           在implementation下面输入 {$R SOUND.RES}

    STP4.使用以下代码播放音乐
        PlaySound('click', 0, snd_ASync or snd_Resource);//PChar类型字符串




  • 相关阅读:
    线程间的通信 与 线程池
    线程同步
    静态代理模式
    多线程状态
    线程、进程、多线程
    Java面向对象之泛型
    ConstraintLayout 用法
    搞NDK开发
    Linux基础命令【记录】
    c# 的一些基本操作或属性
  • 原文地址:https://www.cnblogs.com/xe2011/p/3885592.html
Copyright © 2011-2022 走看看