Solved

Include a resource

Posted on 2004-09-24
7
221 Views
Last Modified: 2013-11-18
Hi

I've written a small component and want to include some small graphic resources into the component dcu.  

Anyone know what the rc should look like?  I know that in an exe it is <resource name> RCDATA <resource to include> but this resource is for a component, not an exe.
0
Comment
Question by:foxjax
7 Comments
 
LVL 12

Assisted Solution

by:esoftbg
esoftbg earned 100 total points
ID: 12143892
take a look at example below:

implementation

{$R esSpin.RES}

procedure TesSpin.SetGlyphFirst(Value: TBitmap);
begin
  if Value <> nil then
    FSpinFirst.Glyph := Value
  else
  begin
    FSpinFirst.Glyph.LoadFromResourceName(HInstance, 'SPINFIRST');
    FSpinFirst.NumGlyphs := 2;
    FSpinFirst.Invalidate;
  end;
end;
0
 

Author Comment

by:foxjax
ID: 12144496
Thanks esoftbg but i am looking for what way to write the rc file

ie: this is what i use in an rc file when i make a program that i want to include resources with - <resource name> RCDATA <resource to include>

but what do i use instead of RCDATA when i am including the resource inside the dcu of a component
0
 
LVL 2

Assisted Solution

by:php4delphi
php4delphi earned 100 total points
ID: 12145944
There is no any difference between including resource to the program or component. In first case the resource will be linked into executable, in case of component resource will be linked to the package (.bpl) and you will see it at design-time and to the application when you will add your component to it.
Ssoftbg provides your completely correct example how to do it.

Resources never linked to dcu directly, you have to provide *.res file together with your dcu
To make res file first you have to write .RC file.
The .RC file is simply a text file that lists resources. For most purposes (except defining dialogs for non-VCL apps), you don't need a resource editor.

The file is in this format:

RESOURCENAME  RESOURCETYPE  FILENAME
For example, to include a bitmap in the resource file:

MyBitmap  BITMAP   MyBitmap.bmp
To include a cursor:

MyCursor  CURSOR  MyCursor.cur
You use the same technique to include AVI, WAV and ICO files.

For other filetypes, you can use the type RC_DATA.

To use the resource script (.RC) file, you use Borland's Resource Compiler (BRCC.EXE with Delphi 1, BRCC32.EXE otherwise) which is located in the Delphi Bin directory. The syntax is:

BRCC32 MyRes.RC
This creates MyRes.RES. You then add the {$R MYRES.RES} to a unit in your application to have Delphi's linker include it, and use one of the Load... API calls (or Delphi's wrappers for some components) to use the resource at runtime.

0
Threat Intelligence Starter Resources

Integrating threat intelligence can be challenging, and not all companies are ready. These resources can help you build awareness and prepare for defense.

 
LVL 22

Assisted Solution

by:Ferruccio Accalai
Ferruccio Accalai earned 50 total points
ID: 12146143
Just a must, nothing to add to php4delphi that is right.

Add to your favourites this link,it's a very useful tutorial on creating resources
http://delphi.about.com/library/weekly/aa021301a.htm

F68 ;-)
0
 
LVL 3

Accepted Solution

by:
Sabre earned 250 total points
ID: 12147423
Just thought i'd add another point.

If you want to include resources inside a component, you can create a dcr file with image editor - Just select New\Component resource file.  Save it with the same name as the component and link it in as esoftbg has already shown you.
0
 

Author Comment

by:foxjax
ID: 12178196
I have split the points between all that provided an answer.

Thanks all
0
 

Author Comment

by:foxjax
ID: 12178209
points split and graded A.

I had forgot all about image editor - with that info and the info php4delphi gave i was able to find out what i needed.
0

Featured Post

How your wiki can always stay up-to-date

Quip doubles as a “living” wiki and a project management tool that evolves with your organization. As you finish projects in Quip, the work remains, easily accessible to all team members, new and old.
- Increase transparency
- Onboard new hires faster
- Access from mobile/offline

Join & Write a Comment

Introduction Raise your hands if you were as upset with FireMonkey as I was when I discovered that there was no TListview.  I use TListView in almost all of my applications I've written, and I was not going to compromise by resorting to TStringGrid…
SASS allows you to treat your CSS code in a more OOP way. Let's have a look on how you can structure your code in order for it to be easily maintained and reused.
Viewers will learn about arithmetic and Boolean expressions in Java and the logical operators used to create Boolean expressions. We will cover the symbols used for arithmetic expressions and define each logical operator and how to use them in Boole…
Viewers will learn about if statements in Java and their use The if statement: The condition required to create an if statement: Variations of if statements: An example using if statements:

708 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

16 Experts available now in Live!

Get 1:1 Help Now