• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 262
  • Last Modified:

Which component should i use to draw on.

Dear Experts,

Again I need your advice.

Thank to you guys I have a good example of a telnet-programm
and it works like a clock. All the features works great.

I have put the example on my site:
http://members.home.nl/peterkiers/ 
(Beneath the Under Construction bar you see a floppy-disk)

The example draws on the canvas of the form.
But when I want to add a toolbar on the form, a part of the canvas
gets hidden!

1. Shouldn't I better use a component to draw on? And which one should I use?
2. I have tried to use the component TImage to draw on
    but then several features in the example doesn't work that good anymore!
 
I get a little frustrated.

Who can help me?

Greetings,

Peter Kiers





0
peterkiers
Asked:
peterkiers
  • 9
  • 6
  • 3
2 Solutions
 
ziolkoCommented:
you can try this, write your own component based on TCustomPanel and expose Canvas property to public section.

TMyDrawingPanel = class(TCustomPanel)
public
  property Canvas;
end;

ziolko.
0
 
2266180Commented:
1. it is indeed the best solution. I suggest a TCustomPanel or descendant
2. see 1 :) TImage has to much overhead for what you need.
0
 
2266180Commented:
hehe, same minute posting :)
0
Free Tool: SSL Checker

Scans your site and returns information about your SSL implementation and certificate. Helpful for debugging and validating your SSL configuration.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

 
ziolkoCommented:
btw. you can write your own constructor in TMyDrawingPanel to
set your panel to suit you like BeverOuter := bvNone, caption := '' etc

ziolko.
0
 
ziolkoCommented:
yup it was matter of seconds:)

ziolko.
0
 
ziolkoCommented:
peter look at ciuly's points and on mine i'm sure this will help you make right decision which comment you should accept ;)

ziolko.
0
 
peterkiersAuthor Commented:
Is it maybe possible to help me with it, at least to give a beginning.

Peter Kiers
0
 
2266180Commented:
> peter look at ciuly's points and on mine i'm sure this will help you make right decision which comment you should accept ;)

rofl

I could still steal them from you, if I toss him some example :P so hurry up ;)
0
 
ziolkoCommented:
that's all you need:
interface
TMyDrawingPanel = class(TCustomPanel)
public
  constructor Create(AOwner: TComponent); override;
  property Canvas;
end;

procedure Register;

implementation

procedure Register;
begin
  RegisterComponents('My Component', [TMyDrawingPanel]);
end;


constructor TMyDrawingPanel.Create(AOwner: TComponent);
begin
  inherited;
  BevelOuter := bvNone;
  Caption := '';
end;

you can write it in separate .pas file and install it as any other component :)
0
 
peterkiersAuthor Commented:
I choose the advice from Ciuly
0
 
ziolkoCommented:
ciuly are you trying to take advantage of fact that my boss is looking over my shoulder? ;)

ziolko.
0
 
2266180Commented:
>I choose the advice from Ciuly
rolf

just in case that wasn't a joke :) peter, keep in mind that my advice is almost the same as ziolkos and he was first ;) (plus he gave code, which again is an important factor when deciding)
0
 
ziolkoCommented:
>>I choose the advice from Ciuly

peter you too against me?:)
i'll show you, both of you, you'll remember me forever:)

ziolko.
0
 
2266180Commented:
>ciuly are you trying to take advantage of fact that my boss is looking over my shoulder? ;)
become a freelancer and work from home, like I did. only problem is when wife gets home, you can't do "overtime" :D
0
 
ziolkoCommented:
heh i thought abt that... but f*** boss i'm looking for new job anyway :)

ziolko.
0
 
peterkiersAuthor Commented:
Thanks both for the advice.

Peter Kiers
0
 
2266180Commented:
hm... I know from the expert skin there is no way of telling which answer will be accepted (though I thinkit's eitehr the first or teh one with biggest number of points) so I hope it was ziolkos answer you wanted to accept and mine to assist ... because this is the correct way, as I already explained above.

and if indeed you wanted to accept ziolkos answer, then I'll take this opportunity to state again that the new interface ... is way below aspectations (to say the least).
0
 
ziolkoCommented:
skin is not that bad, couple o few featuers are cool but cross-topic Qs...
ziolko.
0

Featured Post

Free Tool: SSL Checker

Scans your site and returns information about your SSL implementation and certificate. Helpful for debugging and validating your SSL configuration.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

  • 9
  • 6
  • 3
Tackle projects and never again get stuck behind a technical roadblock.
Join Now