当前位置: 首页 > news >正文

Borland C++builder资源文件编辑

Borland C++builder资源文件编辑
1 建立 现在从borland c++builder ->tools->Image Editor
Image Editor->File->New->Resource
在菜单中会出现resource 从new中选择资源分类有 bitmap icon cursor
若选择了bitmap 会出现选择位图的颜色和大小如果是从外部位图的话就要知道它的大小 其下会出现bitmap1 它就是位图文件名 选中他单击右键 edit 就进入绘图状态可以剪贴板中把外部位图考进来 然后就是保存了
2在c++builder 中Project->Add to Project… 装入资源文件
3使用 a. Graphics::TBitmap *Bitmap; //低颜色
Bitmap=new Graphics::Tbitmap();
Bitmap->Handle=LoadBitmap(int(hInstance),”Bitmap1”)
//256种颜色
b. LoadFromResourceName(int Instance,const AnsiString ResName);
LoadFromResourceID (int Instance,int ResID);
列如:
1 Graphics::TBitmap *Bitmap;
Bitmap=new Graphics::Tbitmap();
Bitmap->LoadFromResourceName(int (Hinstance),”picture1”);
2 Image1->Picture->Bitmap->LoadFromResourceName(int(HInstance),"Bitmap1");
注意 大 小 写 int(hInstance) int(HInstance)
手工操作
选用文本文件输入内容
Bitmap1 BITMAP “ C:\windows\bitmap1.bmp”
用brcc32.exe编译成资源文件 他在bin目录下 brcc32 –32 testwave.rc =>testwave.res
使用时在单元文件cpp中 # pragma resource “D:\\cbuilder\\picture.RES”
TForm1 *Form1;
注意
test.rc是一个纯文本文件,可用写字板建立,
但存盘时,文件名上要加上双引号即成 "test.rc",
否则会变成 wave.rc.txt
这种办法可把声音文件加到你的.exe中:
1.建立纯文本资源文件如wave.rc,内容如下:
ID_WAVE WAVE "C:\testwave.wav"

2.BCB中用Project->Add to Project 将test.rc
添加到你的工程中(即你的程序中);
3.在程序中:
代码:
#include "mmsystem.h"
PlaySound("ID_WAVE",HInstance, SND_RESOURCE);

Playsound( ) && rc


//---------------------------------------------------------------------------
void __fastcall TForm1::FromFileClick(TObject *Sender)
{
PlaySound("mail.wav", NULL, SND_FILENAME);
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FromFileMemoryClick(TObject *Sender)
{
TFileStream *WaveFile = new TFileStream("mail.wav", fmOpenRead);
BYTE *wavemem = new BYTE[WaveFile->Size + 1];

WaveFile->Read(wavemem, WaveFile->Size);

PlaySound(wavemem, NULL, SND_MEMORY);

delete[] wavemem;
delete WaveFile;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FromResourceClick(TObject *Sender)
{
PlaySound("MAIL", HInstance, SND_RESOURCE);
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FromResourceMemoryClick(TObject *Sender)//res 可以 参数一是名称,参数二是类型名称 也就是RC中的 testwave WAVE “ c:\testwave.wav” 可以是WAV ,WAV_DATA 任意的
{
HANDLE ResHandle;
BYTE *WavData;

ResHandle = FindResource(HInstance, "MAIL", "WAVE");
ResHandle = LoadResource(HInstance, ResHandle);
WavData = (unsigned char *)LockResource(ResHandle);

PlaySound(WavData, NULL, SND_MEMORY);

FreeResource(ResHandle);
}

如何把资源文件的文本读入到一个变量?

TResourceStream *rs=new TResourceStream((int)HInstance,"mydata","txt");
TStringList *ss=new TStringList;
ss->LoadFromStream(rs);
delete rs;

如何调用资源文件中res的jpeg、avi,wav,midi,mp3文件

Image中加入jpg可以用如下方法:
在文件头加入#include <jpeg.hpp>
在构造函数中加入
Image1->LoadFromResourceName(0, "JPEG");//你的资源名

Animate中加入avi可能也能用这种办法,不过没试过

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • Latex打开tex文件时产生中文乱码的解决方法
  • 高质量c++/c程序设计指南摘要(二)(原创)
  • 完美解决VMware虚拟机 Linux系统 Ubuntu 20.04 硬盘/磁盘扩容的问题(超级超级详细)
  • 完美解决ubuntu中文件夹加锁的情况
  • c++学习经典
  • 如何成功在没有nvidia驱动的win10电脑里安装CUDA和pytorch-gpu
  • 完美解决Windows10安装和运行TensorFlow编译环境时出现“cudart64_100.dll、cublas64_10.dll、cudnn64_7.dll...”报错的问题
  • const使用详解
  • 【移动式完美包安装】不再重复安装tensorflow和pytorch的方法:实现携带自己已经创建好的pytorch和tensorflow编译环境包到别的电脑上去
  • 完美更新安装TensorFlow-gpu
  • 什么是句柄?(转载)
  • 完美解决ubuntu中所有文将夹下内容被加锁的问题
  • 在BCB中使用VCL控件数组
  • ubuntu20.04给jupyter notebook安装自动补全代码语法的插件工具
  • 几天猎头生活的感想(转载)
  • [数据结构]链表的实现在PHP中
  • JAVA多线程机制解析-volatilesynchronized
  • Java-详解HashMap
  • Java应用性能调优
  • LeetCode18.四数之和 JavaScript
  • MD5加密原理解析及OC版原理实现
  • Meteor的表单提交:Form
  • python 学习笔记 - Queue Pipes,进程间通讯
  • SpiderData 2019年2月16日 DApp数据排行榜
  • SpiderData 2019年2月23日 DApp数据排行榜
  • Spring Cloud中负载均衡器概览
  • TypeScript迭代器
  • 短视频宝贝=慢?阿里巴巴工程师这样秒开短视频
  • 关于 Linux 进程的 UID、EUID、GID 和 EGID
  • 开源地图数据可视化库——mapnik
  • 深入 Nginx 之配置篇
  • 数组的操作
  • 算法系列——算法入门之递归分而治之思想的实现
  • 微信小程序实战练习(仿五洲到家微信版)
  • 学习HTTP相关知识笔记
  • 如何用纯 CSS 创作一个菱形 loader 动画
  • ​​​​​​​sokit v1.3抓手机应用socket数据包: Socket是传输控制层协议,WebSocket是应用层协议。
  • ​Spring Boot 分片上传文件
  • # SpringBoot 如何让指定的Bean先加载
  • #vue3 实现前端下载excel文件模板功能
  • #微信小程序(布局、渲染层基础知识)
  • (2024,LoRA,全量微调,低秩,强正则化,缓解遗忘,多样性)LoRA 学习更少,遗忘更少
  • (iPhone/iPad开发)在UIWebView中自定义菜单栏
  • (Oracle)SQL优化技巧(一):分页查询
  • (pycharm)安装python库函数Matplotlib步骤
  • (附表设计)不是我吹!超级全面的权限系统设计方案面世了
  • ***详解账号泄露:全球约1亿用户已泄露
  • .NET 跨平台图形库 SkiaSharp 基础应用
  • .NET 快速重构概要1
  • .net和php怎么连接,php和apache之间如何连接
  • :中兴通讯为何成功
  • [ Linux 长征路第五篇 ] make/Makefile Linux项目自动化创建工具
  • [ 隧道技术 ] cpolar 工具详解之将内网端口映射到公网
  • [17]JAVAEE-HTTP协议
  • [20190401]关于semtimedop函数调用.txt