我不知道标题是否正确,但是我想做的是编写一种方法,例如将颜色的rgb添加到组合框。假设我们有3个面板,每个面板具有不同的背景色,并且每个面板都有自己的组合框。
int p1RGB = (Panel1.getBackground()).getRGB();
int p1Red = (p1RGB>>16)&0xFF;
int p1Green = (p1RGB>>8)&0xFF;
int p1Blue = p1RGB&0xFF;
String p1RGBStr = String.valueOf(p1Red) +", "+String.valueOf(p1Green) +", "+ String.valueOf(p1Blue);
String[] c1Items = { hex1, p1RGBStr };
DefaultComboBoxModel model1 = new DefaultComboBoxModel (c1Items);
Combo1.setModel(model1);
而是为每个面板再次编写此代码,我是否可以通过为每个面板循环自身的方式编写此代码?我认为javascript中也有类似的东西。
最佳答案
假设我们有3个面板,每个面板具有不同的背景色,并且每个面板都有自己的组合框。
您有一个模型:Panel + combo。
我将创建从JPanel
继承的自定义类并创建模型列表。它将使代码更清晰。
public class MyPanel extends JPanel{/* */}
主类
List<MyPanel> listOfPanels = new ArrayList<MyPanel>(3);
for(MyPanel model : listOfPanels ){
doStuff(model);
}
private void doStuff(MyPanel model){/**/}