Nirtec Studio Forum

General Category => Machines Simulator => Troubleshooting => Topic started by: jairo90 on September 29, 2023, 09:18:35 PM

Title: How could I Hide or delete a panel display
Post by: jairo90 on September 29, 2023, 09:18:35 PM
I  have created a panel display, but i only want to show the panel display when mouse is over the component. i've tried with  "while" and it compiled, but when i put mouse over the component machine simulator fails.
This is my code:

PanelValue output1;
float pos;

public void Main()
{
while(StaticElement0.MouseOverComponent())
{
output1 = MS.PanelDisplay("Position");
output1.SetPosition(1,1);
output1.BackColor(new Color(1,0,0));
output1.TextColor(new Color(0,1,0));
output1.ValueColor(new Color(0,0,1));
pos = StaticElement0.GetAnimationPosition("x");
output1.Value(pos);
}

Thanks in advance.
Title: Re: How could I Hide or delete a panel display
Post by: EasyPLC_Master on September 30, 2023, 02:10:15 PM
Hello,

The problem is you are creating the panel each frame while the condition is true
Use a code like this:

PanelValue output1;
float pos;

public void Init()
{
  output1 = MS.PanelDisplay("Position");
  output1.Visible(false);
output1.SetPosition(1,1);
output1.BackColor(new Color(1,0,0));
output1.TextColor(new Color(0,1,0));
output1.ValueColor(new Color(0,0,1));
}

public void Main()
{

if(StaticElement0.MouseOverComponent())
{
pos = StaticElement0.GetAnimationPosition("x");
output1.Value(pos);
output1.Visible(true);
}
else
  output1.Visible(false);

}

public void Physics()
{

}

public void Finish()
{
 
}