<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Zugriff auf Mehode von übergeordneter Komponente]]></title><description><![CDATA[<p>Hallo zusammen!</p>
<p>Ich möchte eine eigene Komponente schreiben, die von TBitBtn (CLX) abgeleitet ist und einige Anpassungen beim Ändern der Breite erfordert. Ich schreibe also folgendes:</p>
<p>Im Header:</p>
<pre><code>class PACKAGE TMyBitBtn : public TBitBtn
{
private:
protected:
  virtual void __fastcall SetWidth(int Wert);
public:
  __fastcall TMyBitBtn(TComponent* Owner);
__published:
  __property Width = {write = SetWidth};
};
</code></pre>
<p>Und in der Implementierung:</p>
<pre><code>void __fastcall TMyBitBtn::SetWidth(int Wert)
{
  TBitBtn::SetWidth(Wert); // Führt zu Fehler

  // Hier kommen die speziellen Anpassungen von MyBitBtn.
}
</code></pre>
<p>Der Compiler gibt bei TBitBtn::SetWidth eine E2247 &quot;Zugriff nicht möglich&quot; aus. Was mache ich falsch?</p>
<p>Gruß<br />
Marc</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/98504/zugriff-auf-mehode-von-übergeordneter-komponente</link><generator>RSS for Node</generator><lastBuildDate>Sun, 12 Jul 2026 02:06:13 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/98504.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 20 Jan 2005 08:05:01 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Zugriff auf Mehode von übergeordneter Komponente on Thu, 20 Jan 2005 08:05:01 GMT]]></title><description><![CDATA[<p>Hallo zusammen!</p>
<p>Ich möchte eine eigene Komponente schreiben, die von TBitBtn (CLX) abgeleitet ist und einige Anpassungen beim Ändern der Breite erfordert. Ich schreibe also folgendes:</p>
<p>Im Header:</p>
<pre><code>class PACKAGE TMyBitBtn : public TBitBtn
{
private:
protected:
  virtual void __fastcall SetWidth(int Wert);
public:
  __fastcall TMyBitBtn(TComponent* Owner);
__published:
  __property Width = {write = SetWidth};
};
</code></pre>
<p>Und in der Implementierung:</p>
<pre><code>void __fastcall TMyBitBtn::SetWidth(int Wert)
{
  TBitBtn::SetWidth(Wert); // Führt zu Fehler

  // Hier kommen die speziellen Anpassungen von MyBitBtn.
}
</code></pre>
<p>Der Compiler gibt bei TBitBtn::SetWidth eine E2247 &quot;Zugriff nicht möglich&quot; aus. Was mache ich falsch?</p>
<p>Gruß<br />
Marc</p>
]]></description><link>https://www.c-plusplus.net/forum/post/700961</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/700961</guid><dc:creator><![CDATA[MarcE]]></dc:creator><pubDate>Thu, 20 Jan 2005 08:05:01 GMT</pubDate></item><item><title><![CDATA[Reply to Zugriff auf Mehode von übergeordneter Komponente on Thu, 20 Jan 2005 08:30:15 GMT]]></title><description><![CDATA[<p>zuerst: in der Hilfe vom BCB ist auch ein Kapitel Komponenten erstellen/ableiten</p>
<p>in deinem Fall würd ich es eher so machen:</p>
<pre><code class="language-cpp">void __fastcall TMyBitBtn::SetWidth(int Wert)
{
 FWidth = Wert;
}
</code></pre>
<p>wobei du im Header noch</p>
<pre><code class="language-cpp">private:
    int FWidth;
</code></pre>
<p>machen solltest</p>
<p>die speziellen Anpassungen gehören nur dann in SetWidth wenn sie den Wert von Width ändern, ansonsten gehört das eher in den Konstructor, OnPaint oder ähnliches</p>
]]></description><link>https://www.c-plusplus.net/forum/post/700973</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/700973</guid><dc:creator><![CDATA[Linnea]]></dc:creator><pubDate>Thu, 20 Jan 2005 08:30:15 GMT</pubDate></item><item><title><![CDATA[Reply to Zugriff auf Mehode von übergeordneter Komponente on Thu, 20 Jan 2005 09:03:41 GMT]]></title><description><![CDATA[<p>Das Kapitel in der Hilfe habe ich natürlich gelesen.</p>
<p>Das Problem: Woher weiss ich denn dass TBitBtn beim Ändern der Breite nichts anderes macht, als FWidth zu setzen? Eventuell passiern da ja noch andere Dinge, weswegen ich sicherheitshalber die Methode aufrufen will.</p>
<p>Die Tatsache, dass es die Methode TBitBtn::SetWidth gibt, deutet ja darauf hin, dass da in der Tat mehr passiert.</p>
<p>Gruß,<br />
Marc</p>
]]></description><link>https://www.c-plusplus.net/forum/post/700991</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/700991</guid><dc:creator><![CDATA[MarcE]]></dc:creator><pubDate>Thu, 20 Jan 2005 09:03:41 GMT</pubDate></item><item><title><![CDATA[Reply to Zugriff auf Mehode von übergeordneter Komponente on Thu, 20 Jan 2005 09:49:27 GMT]]></title><description><![CDATA[<p>Hast Du's schon mal so probiert? Nach einigen Blicken in die Hilfe und die Pascal-Quellen würde ich sagen,<br />
dass SetWidth() nur in TControl definiert ist. Dann müsstest Du natürlich aufpassen, falls Borland die Komponenten-<br />
Hierarchie irgendwann ändert oder SetWidth() irgendwo zwischendrin überschrieben wird.</p>
<pre><code class="language-cpp">void __fastcall TMyBitBtn::SetWidth(int Wert)
{
  TControl::SetWidth(Wert);
}
</code></pre>
<p>Gruß,</p>
<p>Alexander</p>
]]></description><link>https://www.c-plusplus.net/forum/post/701036</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/701036</guid><dc:creator><![CDATA[Alexander Kempf]]></dc:creator><pubDate>Thu, 20 Jan 2005 09:49:27 GMT</pubDate></item><item><title><![CDATA[Reply to Zugriff auf Mehode von übergeordneter Komponente on Thu, 20 Jan 2005 10:21:33 GMT]]></title><description><![CDATA[<p>TControl::SetWidth gibt den gleichen Fehler.</p>
<p>Aber das mit dem Ansehen der Pascal-Quellen ist interessant. Wie kommt man denn da ran?</p>
<p>Gruß<br />
Marc</p>
]]></description><link>https://www.c-plusplus.net/forum/post/701063</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/701063</guid><dc:creator><![CDATA[MarcE]]></dc:creator><pubDate>Thu, 20 Jan 2005 10:21:33 GMT</pubDate></item><item><title><![CDATA[Reply to Zugriff auf Mehode von übergeordneter Komponente on Thu, 20 Jan 2005 10:30:18 GMT]]></title><description><![CDATA[<p>MarcE schrieb:</p>
<blockquote>
<p>TControl::SetWidth gibt den gleichen Fehler.</p>
</blockquote>
<p>Schade <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /><br />
Ich habe gerade noch mal nachgeschaut. Ist kein Wunder: SetWidth() ist private.</p>
<p>MarcE schrieb:</p>
<blockquote>
<p>Aber das mit dem Ansehen der Pascal-Quellen ist interessant. Wie kommt man denn da ran?</p>
</blockquote>
<p>Indem man die Professional- oder Enterprise-Version kauft. Man kann sogar reindebuggen.</p>
<p>Gruß,</p>
<p>Alexander</p>
]]></description><link>https://www.c-plusplus.net/forum/post/701073</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/701073</guid><dc:creator><![CDATA[Alexander Kempf]]></dc:creator><pubDate>Thu, 20 Jan 2005 10:30:18 GMT</pubDate></item><item><title><![CDATA[Reply to Zugriff auf Mehode von übergeordneter Komponente on Thu, 20 Jan 2005 10:37:31 GMT]]></title><description><![CDATA[<p>Hast Du's schon mal mit OnResize versucht? Das Ereignis ist in TControl als protected deklariert,<br />
also solltest Du innerhalb Deiner Komponente darauf zugreifen können.</p>
<p>Gruß,</p>
<p>Alexander</p>
]]></description><link>https://www.c-plusplus.net/forum/post/701087</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/701087</guid><dc:creator><![CDATA[Alexander Kempf]]></dc:creator><pubDate>Thu, 20 Jan 2005 10:37:31 GMT</pubDate></item><item><title><![CDATA[Reply to Zugriff auf Mehode von übergeordneter Komponente on Thu, 20 Jan 2005 13:19:47 GMT]]></title><description><![CDATA[<p>OnResize tut. Danke.</p>
<p>Die Professional-Version habe ich. Wo finde ich die Pascal-Quellen?</p>
<p>Gruß,<br />
Marc</p>
]]></description><link>https://www.c-plusplus.net/forum/post/701273</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/701273</guid><dc:creator><![CDATA[MarcE]]></dc:creator><pubDate>Thu, 20 Jan 2005 13:19:47 GMT</pubDate></item><item><title><![CDATA[Reply to Zugriff auf Mehode von übergeordneter Komponente on Thu, 20 Jan 2005 13:26:14 GMT]]></title><description><![CDATA[<p>CBuilderPfad\Source</p>
]]></description><link>https://www.c-plusplus.net/forum/post/701280</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/701280</guid><dc:creator><![CDATA[Beliah]]></dc:creator><pubDate>Thu, 20 Jan 2005 13:26:14 GMT</pubDate></item></channel></rss>