Solved

New component question

Posted on 2004-08-19
4
158 Views
Last Modified: 2010-04-05
OK, I'm a total novice at creating components.

I want to create a custom TTreeNode.   I really only need to add a few properties to the existing type.

In D6, I click on NEW COMPONENT and choose an ancestor class but TTreenode isn't listed, though TTreeView is (dont need that).

What method can I use to get the TTreenode code and inherit it so I can create my new TdsTreeNode?

Don
P.S. Marco Cantu's book shows how to use my new Ttreenode in the TreeView.Add function.
0
Comment
Question by:d32coder
  • 2
4 Comments
 
LVL 13

Accepted Solution

by:
BlackTigerX earned 50 total points
ID: 11841126
see... TreeNode is not a component, is just a class, so if you want to derive from that you have to do it from code:

something like this:

TdsTreeNode = class(TTreeNode)
private
  FYourNewProperty:Integer;
public
published
  YourNewProperty:Integer read FYourNewProperty write FYourNewProperty;
end;

then you could add a TdsTreeNode to a TreeView by code just as you would add a TreeNode, but referencing your TdsTreeNode type instead
0
 

Author Comment

by:d32coder
ID: 11841587
I plugged this snippet into my project...


TdsTreeNode = class(TTreeNode)
private
  FTag1: Integer;
  FTag2: Integer;
public
published
  Tag1: Integer read FTag1 write FTag1;
  Tag2: Integer read FTag2 write FTag2;
end;

On compile I get an error
  Published Field 'Tag1' not a class nor an interface type.
   
I wish I knew more about this.  

Don
0
 
LVL 11

Expert Comment

by:shaneholmes
ID: 11842048
property  Tag1: Integer read FTag1 write FTag1;
property   Tag2: Integer read FTag2 write FTag2;

Shane
0
 
LVL 13

Expert Comment

by:BlackTigerX
ID: 11842168
yes, sorry, I missed the property part

and it doesn't have to be in the published part, it can just be public
published is for components
0

Featured Post

Secure Your Active Directory - April 20, 2017

Active Directory plays a critical role in your company’s IT infrastructure and keeping it secure in today’s hacker-infested world is a must.
Microsoft published 300+ pages of guidance, but who has the time, money, and resources to implement? Register now to find an easier way.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Introduction The parallel port is a very commonly known port, it was widely used to connect a printer to the PC, if you look at the back of your computer, for those who don't have newer computers, there will be a port with 25 pins and a small print…
Have you ever had your Delphi form/application just hanging while waiting for data to load? This is the article to read if you want to learn some things about adding threads for data loading in the background. First, I'll setup a general applica…
A short tutorial showing how to set up an email signature in Outlook on the Web (previously known as OWA). For free email signatures designs, visit https://www.mail-signatures.com/articles/signature-templates/?sts=6651 If you want to manage em…

679 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