展开全部
// 正好无聊,给你写一个,不过这种作业还是建议自己62616964757a686964616fe4b893e5b19e31333239306563做
import java.awt.BorderLayout;
import java.awt.Component;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.awt.event.MouseMotionListener;
import java.util.ArrayList;
import java.util.List;
import javax.swing.JFrame;
import javax.swing.JList;
import javax.swing.JTextArea;
public class GoodsFrame extends JFrame {
// 产品名称下拉列表
private JList goodsList = null;
private JTextArea ta = null;
// 产品
private List goods = null;
public GoodsFrame() {
initGoods();
init();
}
private void initGoods() {
Goods g1 = new Goods("金", 5000d, "广州", "真金不怕火炼");
Goods g2 = new Goods("银", 4000d, "江苏", "真银不怕火炼");
Goods g3 = new Goods("铜", 3000d, "河北", "真铜不怕火炼");
Goods g4 = new Goods("铁", 2000d, "湖南", "真铁也怕火炼");
goods = new ArrayList();
goods.add(g1);
goods.add(g2);
goods.add(g3);
goods.add(g4);
}
private void init() {
this.setLayout(new BorderLayout());
// 添加List
this.add(getGoodsList(), BorderLayout.NORTH);
// 添加文本区
this.add(getTextArea(), BorderLayout.CENTER);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setSize(300, 200);
this.setVisible(true);
}
private Component getTextArea() {
if (ta == null) {
ta = new JTextArea("sdf");
}
return ta;
}
private Component getGoodsList() {
if (goodsList == null) {
goodsList = new JList();
// 添加4个商品
goodsList.setListData(goods.toArray());
// 添加事件
goodsList.addMouseListener(new MouseListener() {
public void mouseClicked(MouseEvent e) {
int count = e.getClickCount();
// 获得被选取对象
Goods goods = (Goods) goodsList.getSelectedValue();
// 单击
if (count == 1) {
ta.setText("价格: " + goods.getPrice() + ", 产地: " + goods.getOrigin());
}
// 双击
if (count == 2) {
ta.setText("广告: " + goods.getAdvertisement());
}
}
public void mouseEntered(MouseEvent e) {
}
public void mouseExited(MouseEvent e) {
}
public void mousePressed(MouseEvent e) {
}
public void mouseReleased(MouseEvent e) {
}});
}
return goodsList;
}
public static void main(String[] args) {
new GoodsFrame();
}
}
/**
* 产品类
*
* @author Administrator
*
*/
class Goods {
// 名称
private String name;
// 价格
private double price;
// 产地
private String origin;
// 广告
private String advertisement;
public Goods() {
}
public Goods(String name, double price, String origin, String advertisement) {
super();
this.name = name;
this.price = price;
this.origin = origin;
this.advertisement = advertisement;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public double getPrice() {
return price;
}
public void setPrice(double price) {
this.price = price;
}
public String getOrigin() {
return origin;
}
public void setOrigin(String origin) {
this.origin = origin;
}
public String getAdvertisement() {
return advertisement;
}
public void setAdvertisement(String advertisement) {
this.advertisement = advertisement;
}
@Override
public int hashCode() {
final int prime = 31;
int result = 1;
result = prime * result + ((name == null) ? 0 : name.hashCode());
long temp;
temp = Double.doubleToLongBits(price);
result = prime * result + (int) (temp ^ (temp >>> 32));
return result;
}
@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (getClass() != obj.getClass())
return false;
Goods other = (Goods) obj;
if (name == null) {
if (other.name != null)
return false;
} else if (!name.equals(other.name))
return false;
if (Double.doubleToLongBits(price) != Double
.doubleToLongBits(other.price))
return false;
return true;
}
@Override
public String toString() {
return name;
}
}
已赞过
已踩过<
你对这个回答的评价是?
评论
收起