السلام عليكم ..
رب يسعدكم بالدارين ..
كتبت هذا الكوود لكن المشكلة في لون الخلفيــه ؟؟
فمثلا فكرة البرنامج عندي 2 Jlist .. أنسخ من الأولى إلى الثانيه باستخدام button وإذا ضغطت على أي عنصر في اللستهcopy تتغير خلفية الفريم ...
لكن كيف أغيير الخلفيه بنفس لون العنصر اللي ضغطت عليه من اللسته copy
هذا الكوود ..
import java.awt.Color;
import java.awt.FlowLayout;
import java.awt.Image;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;
import javax.swing.event.ListSelectionEvent;
import javax.swing.event.ListSelectionListener;
public class List extends JFrame {
private JList color;
private JList Copy;
private JButton b;
private static final Color a[]={Color.CYAN,Color.BLACK,Color.BLUE,Color.GRAY,Color.RED,Color.GREEN,Color.WHITE,Color.YELLOW,Color.ORANGE,Color.PINK};
private static final String array[]={
" cyan"," black"," blue"," gray"," red"," green"," white","yellow"," orange"," pink"};
public List()
{
setTitle( " JLIST APPLICATION");
setSize(600,200);
setLayout(new FlowLayout());
color=new JList(array);
color.setVisibleRowCount(4);
color.setSelectionMode(ListSelectionModel.MULTIPLE_INTERVAL_SELECTION);
add(new JScrollPane( color));
b=new JButton(" copy >>>");
b.addActionListener(new ActionListener ()
{
public void actionPerformed(ActionEvent e)
{
Copy.setListData(color.getSelectedValues());
}
});
add(b);
Copy=new JList();
Copy.setVisibleRowCount(4);
Copy.setFixedCellWidth(100);
Copy.setFixedCellHeight(15);
Copy.setSelectionMode(ListSelectionModel.SINGLE_INTERVAL_SELECTION);
Copy.addListSelectionListener(new List1());
add(new JScrollPane( Copy));
}
private class List1 implements ListSelectionListener
{
@Override
public void valueChanged(ListSelectionEvent e)
{
getContentPane().setBackground(a[Copy.getSelectedIndex()]);
}
}
public static void main(String[] args) {
List ob=new List();
ob.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
ob.setVisible(true);
}
}وجزاكم رب خيراا