gpt4 book ai didi

Java使用一个变量作为另一个变量

转载 作者:行者123 更新时间:2023-12-02 04:25:52 25 4
gpt4 key购买 nike

所以这就是交易。如果可能的话,我不想编写 50 多个 if 语句或开关。

设置:我有一个主类,它是一个 GUI。在该 GUI 中,我有一个 JLabel,我想在其中更改其背景颜色。

它已被初始化为静态 JLabel,因此可以由其他类设置,并且工作正常。

主类

 goodornot.setBackground(Color.LIGHT_GRAY);

在另一个从脚本获取输入的类中,我想设置通用变量。

PerfLoop 类

RunChecks.rcMin = 50;
RunChecks.rcMax = 75;
RunChecks.changeColor = "goodornot";
String[] one = linecut.split("="); <-- I am splitting a string IGNORE
RunChecks.rcToCheck = Integer.parseInt(one[1]);
RunChecks rc = new RunChecks();
new Thread(rc).start();

所以我设置了所有这些,它看起来很棒并且没有错误。

现在在另一个类(runChecks)中,我试图按原样拉入树变量,以便它们可以放入通用变量中,但我遇到了一个问题。

RunChecks 类

public void run() {
// TODO Auto-generated method stub
if (rcToCheck <= rcMin){
Main.changeColor.setBackground(Color.GREEN);
} else if (){
}

我不能在这里使用changeColor来设置goodornot的颜色。如何获取变量changeColor来表示需要进入Main.(就在这里).setBackground(Color.GREEN)的内容?

我认为有一种方法,但在我的一生中,我尝试了很多不同的方法,但没有成功。

是的,所有变量都设置为静态字符串和整数。

谢谢

最佳答案

您正在开始一个新线程,因此您需要对标签的引用。请尝试以下操作:

class RunChecks implements Runnable
{
private JLabel label;

public RunChecks(JLabel label)
{
this.label = label;
}

public void run()
{
if (rcToCheck <= rcMin){
label.setBackground(Color.GREEN);
} else if (){
}
}
}

...

    RunChecks rc = new RunChecks(yourLabelVariableHere);
new Thread(rc).start();

关于Java使用一个变量作为另一个变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32189516/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com