<?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[Labels weiterschalten]]></title><description><![CDATA[<p>Halli <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /> Hallo,</p>
<p>ich habe 4 labels und einen button.<br />
Ich möchte durch klicken auf den button zum 2. label und durch nochmaliges klicken zum 3.label und schließlich zum 4. label. Es soll nur der sichtbar sein, der eben in der Reihenfolge drankommt.<br />
Verständlich??? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /><br />
Mein Werk:</p>
<p>// Declarations added here will be included at the top of the .HPP file</p>
<pre><code class="language-cpp">class __Form1_declspec Form1 : public __Form1_Base
{

    public:
        // add your public instance data here

    private:
         WBool _Set_Text(void); //
add your private instance data here
         WInt _text_nr;
         WInt _DeuEng;
         WInt _um1;

    protected:
        // add your protected instance data here

};

// Code added here will be included at the top of the .CPP file
 WBool Form1::_Set_Text(void)
 {
if (_text_nr == 0 &amp; _DeuEng == 0)
{
_um1 = 0;}

if (_text_nr == 1 &amp; _DeuEng == 0)
{_um1 = 1;}

if (_text_nr == 1 &amp; _DeuEng == 1)
{_um1 = 2;}

if (_text_nr == 1 &amp; _DeuEng == 2)
_um1 = 3;   

  switch (_um1)
    {
     case 0:
           cb_1-&gt;SetText( &quot;Text weiterschalten&quot; );
           label_1-&gt;SetText( &quot;&quot; );
           label_2-&gt;SetText( &quot; Zweite Text Position&quot; );
           label_3-&gt;SetText( &quot; &quot; );
           label_4-&gt;SetText( &quot; &quot; );
       break;
       case 1:
            cb_1-&gt;SetText( &quot;Text weiterschalten&quot; );
            label_1-&gt;SetText( &quot;&quot; );
            label_2-&gt;SetText( &quot;&quot; );
            label_3-&gt;SetText( &quot; Dritte Position &quot; );
            label_4-&gt;SetText( &quot; &quot; );

       break;
       case 2:
           cb_1-&gt;SetText( &quot;Text weiterschalten&quot; );
           label_1-&gt;SetText( &quot;&quot; );
           label_2-&gt;SetText( &quot;&quot; );
           label_3-&gt;SetText( &quot; &quot; );
           label_4-&gt;SetText( &quot;Vierte Text Position  &quot; );

      break;

   }
  return FALSE;
   }
//  Include definitions for resources.
#include &quot;WRes.h&quot;

Form1::Form1()
{
 _text_nr = 0;          //KONSTRUKTOR
  _DeuEng  = 0;
}

Form1::~Form1()
{

}

WBool Form1::cb_1_Click(
    WObject *           source,
    WEventData *        event )
{
   /* if (_text_nr == 0)
_text_nr = 1;
else*/
//_text_nr = 1;
_Set_Text();

    return FALSE;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/145256/labels-weiterschalten</link><generator>RSS for Node</generator><lastBuildDate>Thu, 03 Sep 2026 04:16:34 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/145256.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 26 Apr 2006 11:39:42 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Labels weiterschalten on Wed, 26 Apr 2006 11:39:42 GMT]]></title><description><![CDATA[<p>Halli <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /> Hallo,</p>
<p>ich habe 4 labels und einen button.<br />
Ich möchte durch klicken auf den button zum 2. label und durch nochmaliges klicken zum 3.label und schließlich zum 4. label. Es soll nur der sichtbar sein, der eben in der Reihenfolge drankommt.<br />
Verständlich??? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /><br />
Mein Werk:</p>
<p>// Declarations added here will be included at the top of the .HPP file</p>
<pre><code class="language-cpp">class __Form1_declspec Form1 : public __Form1_Base
{

    public:
        // add your public instance data here

    private:
         WBool _Set_Text(void); //
add your private instance data here
         WInt _text_nr;
         WInt _DeuEng;
         WInt _um1;

    protected:
        // add your protected instance data here

};

// Code added here will be included at the top of the .CPP file
 WBool Form1::_Set_Text(void)
 {
if (_text_nr == 0 &amp; _DeuEng == 0)
{
_um1 = 0;}

if (_text_nr == 1 &amp; _DeuEng == 0)
{_um1 = 1;}

if (_text_nr == 1 &amp; _DeuEng == 1)
{_um1 = 2;}

if (_text_nr == 1 &amp; _DeuEng == 2)
_um1 = 3;   

  switch (_um1)
    {
     case 0:
           cb_1-&gt;SetText( &quot;Text weiterschalten&quot; );
           label_1-&gt;SetText( &quot;&quot; );
           label_2-&gt;SetText( &quot; Zweite Text Position&quot; );
           label_3-&gt;SetText( &quot; &quot; );
           label_4-&gt;SetText( &quot; &quot; );
       break;
       case 1:
            cb_1-&gt;SetText( &quot;Text weiterschalten&quot; );
            label_1-&gt;SetText( &quot;&quot; );
            label_2-&gt;SetText( &quot;&quot; );
            label_3-&gt;SetText( &quot; Dritte Position &quot; );
            label_4-&gt;SetText( &quot; &quot; );

       break;
       case 2:
           cb_1-&gt;SetText( &quot;Text weiterschalten&quot; );
           label_1-&gt;SetText( &quot;&quot; );
           label_2-&gt;SetText( &quot;&quot; );
           label_3-&gt;SetText( &quot; &quot; );
           label_4-&gt;SetText( &quot;Vierte Text Position  &quot; );

      break;

   }
  return FALSE;
   }
//  Include definitions for resources.
#include &quot;WRes.h&quot;

Form1::Form1()
{
 _text_nr = 0;          //KONSTRUKTOR
  _DeuEng  = 0;
}

Form1::~Form1()
{

}

WBool Form1::cb_1_Click(
    WObject *           source,
    WEventData *        event )
{
   /* if (_text_nr == 0)
_text_nr = 1;
else*/
//_text_nr = 1;
_Set_Text();

    return FALSE;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1045594</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1045594</guid><dc:creator><![CDATA[Renate]]></dc:creator><pubDate>Wed, 26 Apr 2006 11:39:42 GMT</pubDate></item><item><title><![CDATA[Reply to Labels weiterschalten on Wed, 26 Apr 2006 11:54:51 GMT]]></title><description><![CDATA[<p>Du benötigst einen Zähler (vorzugsweise als Klassenmember), der bei jedem Klick hochgezählt wird:</p>
<pre><code class="language-cpp">WBool SetText()
{
  _uml=(_uml+1)%4;//dadurch springt der Wert am Ende auf 0 zurück

  switch(_uml)
  {
  case 0:
    ...
  }
}
</code></pre>
<p>(übrigens, eleganter liese sich das lösen, wenn du statt vier label_... Variablen ein Array hättest - da kannst du mit einer for()-Schleife durchgehen und den &quot;richtigen&quot; Label setzen. Aber ich weiß nicht, ob dein Framework da mitmachen würde)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1045611</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1045611</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Wed, 26 Apr 2006 11:54:51 GMT</pubDate></item><item><title><![CDATA[Reply to Labels weiterschalten on Wed, 26 Apr 2006 18:54:25 GMT]]></title><description><![CDATA[<p>Danke für de Tipp, bin schon weitergekommen, nur eins:<br />
ich habe ein Menue erstellt, beim click auf Start sollen mittels einer schleife(for) die labels einmal selbsttätig von label_1 bis label_4 wandern(sie sind im Kreis angeordnet).<br />
Jeder label soll ca 1 Sekunde angezeigt werden und bei label_1 anhalten.</p>
<p>// Declarations added here will be included at the top of the .HPP file</p>
<pre><code class="language-cpp">class __Form1_declspec Form1 : public __Form1_Base
{

    public:
        // add your public instance data here

    private:
         WBool _Set_Text(void); // add your private instance data here
         WInt _text_nr;
         WInt _DeuEng;
         WInt _um1;
          WInt i;
    protected:
        // add your protected instance data here

};

// Code added here will be included at the top of the .CPP file
 WBool Form1::_Set_Text(void)
 {
   /*if (_text_nr == 0 &amp; _DeuEng == 0)
{ _um1 = 0;}

    if (_text_nr == 1 &amp; _DeuEng == 0)
{ _um1 = 1;}

    if (_text_nr == 1 &amp; _DeuEng == 1)
{ _um1 = 2;}

    if (_text_nr == 1 &amp; _DeuEng == 2)
{_um1 = 3; } */

    _um1=(_um1+1)%4;//dadurch springt der Wert am Ende auf 0 zurück

  switch (_um1)
    {
     case 0:
           cb_1-&gt;SetText( &quot;Text weiterschalten&quot; );
           label_1-&gt;SetText( &quot;1 Text Position&quot; );
           label_2-&gt;SetText( &quot; &quot; );
           label_3-&gt;SetText( &quot; &quot; );
           label_4-&gt;SetText( &quot; &quot; );
       break;
       case 1:
            cb_1-&gt;SetText( &quot;Text weiterschalten&quot; );
            label_1-&gt;SetText( &quot;&quot; );
            label_2-&gt;SetText( &quot;2 Text Position &quot; );
            label_3-&gt;SetText( &quot;&quot; );
            label_4-&gt;SetText( &quot; &quot; );

       break;
      case 2:
           cb_1-&gt;SetText( &quot;Text weiterschalten&quot; );
           label_1-&gt;SetText( &quot;&quot; );
           label_2-&gt;SetText( &quot;&quot; );
           label_3-&gt;SetText( &quot;  3 Text Position &quot; );
           label_4-&gt;SetText( &quot;  &quot; );

      break;
       case 3:
            cb_1-&gt;SetText( &quot;Text weiterschalten&quot; );

            label_1-&gt;SetText( &quot; &quot; );
            label_2-&gt;SetText( &quot; &quot; );
            label_3-&gt;SetText( &quot; &quot; );
            label_4-&gt;SetText( &quot;4 Text Position &quot; );

      break; 

    }
  return FALSE;
   }

//  Include definitions for resources.
#include &quot;WRes.h&quot;

Form1::Form1()
{
 _text_nr = 0;          //KONSTRUKTOR
 _DeuEng  = 0;
 i = 0;
}

Form1::~Form1()
{

}

WBool Form1::menu_1_ErstePosition_Click(
    WObject *           source,
    WEventData *        event )
{
           label_1-&gt;SetText( &quot;1 Text Position &quot; );
           label_2-&gt;SetText( &quot; &quot; );
           label_3-&gt;SetText( &quot; &quot; );
           label_4-&gt;SetText( &quot; &quot; );
             if (_text_nr == 0 &amp; _DeuEng == 0)
{ _um1 = 0;}
    return FALSE;
}

WBool Form1::menu_1_ZweitePosition_Click(
    WObject *           source,
    WEventData *        event )
{
            label_1-&gt;SetText( &quot; &quot; );
            label_2-&gt;SetText( &quot;2 Text Position &quot; );
            label_3-&gt;SetText( &quot; &quot; );
            label_4-&gt;SetText( &quot; &quot; );
        if (_text_nr == 0 &amp; _DeuEng == 0)
{ _um1 = 1;}
    return FALSE;
}

WBool Form1::menu_1_DrittePosition_Click(
    WObject *           source,
    WEventData *        event )
{
            label_1-&gt;SetText( &quot; &quot; );
            label_2-&gt;SetText( &quot; &quot; );
            label_3-&gt;SetText( &quot; 3 Text Position&quot; );
            label_4-&gt;SetText( &quot; &quot; );
        if (_text_nr == 0 &amp; _DeuEng == 0)
{ _um1 = 2;}
    return FALSE;
}

WBool Form1::menu_1_ViertePosition_Click(
    WObject *           source,
    WEventData *        event )
{
            label_1-&gt;SetText( &quot; &quot; );
            label_2-&gt;SetText( &quot; &quot; );
            label_3-&gt;SetText( &quot; &quot; );
            label_4-&gt;SetText( &quot; 4 Text Position&quot; ); 
        if (_text_nr == 0 &amp; _DeuEng == 0)
{_um1 = 3; }
    return FALSE;
}

WBool Form1::menu_1_Start_Click(
    WObject *           source,
    WEventData *        event )
{
     if (_text_nr == 0) 
_text_nr = 0;

 else  
 //_text_nr = 1;
 for(_text_nr =1 ; _DeuEng&lt;4; _text_nr ++  );////----------- &gt;&gt;&gt;//ZAEHLSCHLEIFE

_Set_Text();

    return FALSE;

}

WBool Form1::cb_1_Click(
    WObject *           source,
    WEventData *        event )
{
    if (_text_nr == 0)
_text_nr = 0;

 else  
 _text_nr = 1;
_Set_Text();

 return FALSE;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1045930</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1045930</guid><dc:creator><![CDATA[Renate]]></dc:creator><pubDate>Wed, 26 Apr 2006 18:54:25 GMT</pubDate></item><item><title><![CDATA[Reply to Labels weiterschalten on Thu, 27 Apr 2006 06:18:04 GMT]]></title><description><![CDATA[<blockquote>
<pre><code class="language-cpp">if(_text_nr==0)
  _text_nr=0;
</code></pre>
</blockquote>
<p>Wat soll der (sorry) Quatsch? Wenn die Variable bereits 0 ist, brauchst du sie nicht noch auf 0 zu setzen.</p>
<blockquote>
<pre><code class="language-cpp">for(_text_nr =1 ; _DeuEng&lt;4; _text_nr ++  );
</code></pre>
</blockquote>
<p>Das ist genauso unnötig - damit bekommst du je nach Startwert von _DeuEng entweder einen noop oder eine Endlosschleife.</p>
<p>Ansonsten sieht mir dein Code auch reichlich verworren aus. Die _Set_Text()-Methode kümmert sich schon selber darum, daß der Text bei jedem Aufruf um einen Schritt weiterspringt - also mußt du sie nur in einer Schleife so oft aufrufen, wie du es benötigst:</p>
<pre><code class="language-cpp">while(/* beliebiges Abbruchkriterium */)
{
  _Set_Text();
  // warte etwas
}
</code></pre>
<p>PS: Variablennamen mit _ sind &quot;böse&quot;.</p>
<p>PPS: Wenn du Probleme mit deiner Oberfläche hast, solltest du dich mal im Fachforum deines Compilers (was für einer erstellt denn so ein Codegerüst?) umsehen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1046104</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1046104</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Thu, 27 Apr 2006 06:18:04 GMT</pubDate></item><item><title><![CDATA[Reply to Labels weiterschalten on Thu, 27 Apr 2006 12:02:23 GMT]]></title><description><![CDATA[<p>CStoll schrieb:</p>
<blockquote>
<blockquote>
<pre><code class="language-cpp">if(_text_nr==0)
  _text_nr=0;
</code></pre>
</blockquote>
<p>Wat soll der (sorry) Quatsch? Wenn die Variable bereits 0 ist, brauchst du sie nicht noch auf 0 zu setzen.</p>
<blockquote>
<pre><code class="language-cpp">for(_text_nr =1 ; _DeuEng&lt;4; _text_nr ++  );
</code></pre>
</blockquote>
<p>Das ist genauso unnötig - damit bekommst du je nach Startwert von _DeuEng entweder einen noop oder eine Endlosschleife.</p>
<p>Ansonsten sieht mir dein Code auch reichlich verworren aus. Die _Set_Text()-Methode kümmert sich schon selber darum, daß der Text bei jedem Aufruf um einen Schritt weiterspringt - also mußt du sie nur in einer Schleife so oft aufrufen, wie du es benötigst:</p>
<pre><code class="language-cpp">while(/* beliebiges Abbruchkriterium */)
{
  _Set_Text();
  // warte etwas
}
</code></pre>
<p>PS: Variablennamen mit _ sind &quot;böse&quot;.</p>
<p>PPS: Wenn du Probleme mit deiner Oberfläche hast, solltest du dich mal im Fachforum deines Compilers (was für einer erstellt denn so ein Codegerüst?) umsehen.</p>
</blockquote>
<p>Danke für Deine Mühe, aber ich check nicht ganz was Du meinst! <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f62e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_open_mouth"
      title=":open_mouth:"
      alt="😮"
    /><br />
Warum sind Variablennamen mit _ böse? Es wurde mir so beigebracht!</p>
<p>Der Text soll ja nicht bei jedem Aufruf um einen Schritt weiterspringen - sondern vom ersten label bis zum 4.label erscheinen, beim ersten anfangen und sobald es beim 4. angekommen ist, stoppen <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44d.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_up"
      title=":+1:"
      alt="👍"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1046266</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1046266</guid><dc:creator><![CDATA[Renate]]></dc:creator><pubDate>Thu, 27 Apr 2006 12:02:23 GMT</pubDate></item><item><title><![CDATA[Reply to Labels weiterschalten on Thu, 27 Apr 2006 12:06:21 GMT]]></title><description><![CDATA[<p>Renate schrieb:</p>
<blockquote>
<p>Warum sind Variablennamen mit _ böse? Es wurde mir so beigebracht!</p>
</blockquote>
<p>Laut Standard dürfen Namen, die mit _ beginnen, vom Compiler für interne Zwecke missbraucht werden. Deshalb solltest <strong>du</strong> als Programmierer lieber die Finger davon lassen.<br />
(mal ganz abgesehen von der Tatsache, daß der Unterstrich die Lesbarkeit deines Programms nicht gerade erhöht)</p>
<blockquote>
<p>Der Text soll ja nicht bei jedem Aufruf um einen Schritt weiterspringen - sondern vom ersten label bis zum 4.label erscheinen, beim ersten anfangen und sobald es beim 4. angekommen ist, stoppen <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44d.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_up"
      title=":+1:"
      alt="👍"
    /></p>
</blockquote>
<p>Da mußt du halt dein Abbruchkriterium richtig setzen <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1046271</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1046271</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Thu, 27 Apr 2006 12:06:21 GMT</pubDate></item><item><title><![CDATA[Reply to Labels weiterschalten on Thu, 27 Apr 2006 12:11:41 GMT]]></title><description><![CDATA[<p>CStoll schrieb:</p>
<blockquote>
<p>PS: Variablennamen mit _ sind &quot;böse&quot;.</p>
</blockquote>
<p>Nein, nicht generell. Und die Regeln bezüglich reservierter Bezeichner sind auch nicht allzu schwer.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1046283</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1046283</guid><dc:creator><![CDATA[finix]]></dc:creator><pubDate>Thu, 27 Apr 2006 12:11:41 GMT</pubDate></item></channel></rss>