<div dir="auto"><div class="gmail_quote" dir="auto"><div dir="ltr" class="gmail_attr">Michael Van Canneyt <<a href="mailto:michael@freepascal.org">michael@freepascal.org</a>> schrieb am So., 13. Juni 2021, 13:53:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><br>
<br>
On Sun, 13 Jun 2021, Sven Barth via lazarus wrote:<br>
<br>
> Am 11.06.2021 um 23:48 schrieb Juha Manninen via lazarus:<br>
>> Regarding issue : <a href="https://bugs.freepascal.org/view.php?id=28450" rel="noreferrer noreferrer" target="_blank">https://bugs.freepascal.org/view.php?id=28450</a> <br>
>> <<a href="https://bugs.freepascal.org/view.php?id=28450" rel="noreferrer noreferrer" target="_blank">https://bugs.freepascal.org/view.php?id=28450</a>><br>
>> <br>
>> The parameter passed to function RegisterComponents() is TComponentClass <br>
>> which means "class of TComponent". It is only type information and does not <br>
>> carry information about sub-components.<br>
>> Could somebody please explain how it works in Delphi. Does this really work <br>
>> :<br>
>> RegisterComponents('Sample', [TMyFrame]);<br>
><br>
> Yes, it does work this way. I don't know what you mean with "information <br>
> about sub-components". The VMT vFieldTable entry contains all published <br>
> fields of the class and thus all the sub controls that are visible through <br>
> the RTTI and thus for the designer. If the IDE does not use that yet, then it <br>
> definitly should.<br>
><br>
>> I added a comment to the report but it is old and the reporter may not read <br>
>> it.<br>
>> Maybe there should be a new function RegisterFrame() or similar?<br>
><br>
> There is no need to add anything, because the necessary information is <br>
> already there. It's just that the IDE doesn't use it yet.<br>
<br>
In Delphi, the above also does not work, you need special handling for<br>
frames, just as for forms.<br></blockquote></div><div dir="auto"><br></div><div dir="auto">You think I didn't test it before writing? I created a frame, added it to a package, added a Register procedure, installed the package, started a new VCL application and added that frame to the form from the component palette. I had added a button and a combo box and both were visible in the designer. </div><div dir="auto"><br></div><div dir="auto">Or did I miss something here? </div><div dir="auto"><br></div><div dir="auto">Regards, </div><div dir="auto">Sven </div><div class="gmail_quote" dir="auto"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"></blockquote></div></div>