Eigenschaften verändern sich... :(



  • Hallo zusammen,

    ich stehe vor einem sehr schrägen Problem und zwar:
    ich habe in miner Anwendung folgendes:

    int Achse_Int;
    if (Achsart_CB->Text=="Linearachse")
      {
      Achse_Int=1;
      // Enablen weil für Drehbewegung ausgeblendet
      Label8->Enabled = true;
      Edit4->Enabled = true;
      Label9->Visible = true;
      Einheit_CB->Text="";
      Einheit_CB->Items->Clear();
      Einheit_CB->Items->Add("nm");
      Einheit_CB->Items->Add("um");
      Einheit_CB->Items->Add("mm");
      Einheit_CB->Items->Add("m");
      Einheit_CB->Items->Add("km");
      }
    else if (Achsart_CB->Text=="Rundachse")
      {
      Achse_Int=12;
      // Disablen weil Drehbewegung nicht pro Weg sein kann
      Label8->Enabled = false;
      Edit4->Enabled = false;//Editfeld für Eingabe des Weges pro Umdr. Disablen
      Label9->Visible = false;//Anzeige hinter Edit 4 ausblenden
      Einheit_CB->Text="";
      Einheit_CB->Items->Clear();
      Einheit_CB->Items->Add("rad");
      Einheit_CB->Items->Add("''");
      Einheit_CB->Items->Add("'");
      Einheit_CB->Items->Add("°");
      Einheit_CB->Items->Add("gon");
      }
    

    in meinem Fall wähle ich nun den Eintrag "Rundachse" aus und dann wird Label8 & Edit4 & Label9 auch disabled, dannach rufe ich eine Funktion auf die folgenden Inhalt (unter anderem) hat:

    Profi_p->RecParam(&sendData, 1);
      for (i=0; i<=20 && IntToHex(result.PKE,2) != "1001" && IntToHex(result.PKE,2) != "2001"; i++)
         {
         Profi_p->ReadSlave(SlaveID_ED->Text.ToInt(),&result);
         int result_int=result.PWE1;
         if (result_int==1)
           Achsart_CB->ItemIndex = 0;
         else if (result_int==12)
           Achsart_CB->ItemIndex = 1;
         else if (i>=20)
           Achsart_CB->Text = "Empfang ungültig";
         Profi_p->RecParam(&sendData, 1);
         Sleep(100);
         }
    if (Achsart_CB->Text=="Linearachse")
      {
      Einheit_CB->Text="";
      Einheit_CB->Items->Clear();
      Einheit_CB->Items->Add("nm");
      Einheit_CB->Items->Add("um");
      Einheit_CB->Items->Add("mm");
      Einheit_CB->Items->Add("m");
      Einheit_CB->Items->Add("km");
      }
    else if (Achsart_CB->Text=="Rundachse")
      {
        // Disablen weil Drehbewegung nicht pro Weg sein kann
      Label8->Enabled = false;
      Edit4->Enabled = false;//Editfeld für Eingabe des Weges pro Umdr. Disablen
      Label9->Visible = false;//Anzeige hinter Edit 4 ausblenden
      Einheit_CB->Text="";
      Einheit_CB->Items->Clear();
      Einheit_CB->Items->Add("rad");
      Einheit_CB->Items->Add("''");
      Einheit_CB->Items->Add("'");
      Einheit_CB->Items->Add("°");
      Einheit_CB->Items->Add("gon");
      }
      if (i>20)
        {
        if (lan)
          {
          Application->MessageBox("abrufen des Parameters misslungen!\nNummer:1","",16);
          StatusBar1->SimpleText = "abrufen des Parameters misslungen!";
          }
        else
          {
          Application->MessageBox("Faild, getting the Parameter!","",16);
          StatusBar1->SimpleText = "getting Parameters failed!";
          }
        }
    

    Okay, sieht aucxh gut aus, oder? Hm, gut, aif jedenfall wird nach Aufruf dieser Funktion ganz plötzlich Label8 und Edit4 wieder geEnabled... 😕 Hm ja, ich hab' natürlich alle Files meines Projektes durchsucht nach irgendwelchen Einträgen die so lauten: "Edit4->Enabled" da finde ich aber nichts *hilfeeeeee* WAS soll das? Wie kann sowas passieren? Vielen Dank für eure Hilfe!


  • Mod

    Hallo

    und was sagt der Debugger 😋
    (Haltepunkt auf enabled)

    MfG
    Klaus



  • Der sagt nicht viel, nach meinen Enabled =false, zeigt der Debugger auch false an wenn ich "Label8->Enabled" anschaue aber bei "Label8->Enabled" kann ich nicht "Bei Änderung anhalten" reintun, das ist das Übel... 😞


Anmelden zum Antworten