JScrollBar监听事件addAdjustmentListener问题
JScrollBar的值改变了,我想改变一个label的背景颜色没能成功,请高手指教。
//监听事件代码如下
scrollbar.addAdjustmentListener(new AdjustmentListener() { public void adjustmentValueChanged(AdjustmentEvent e) { // TODO Auto-generated method stub String temp = Integer.toHexString(e.getValue()); if(temp.length()!=6){ int flag = 6-temp.length(); temp = ""; for (int i = 0; i < flag; i++) { temp += "0"; } // System.out.println(temp); temp += Integer.toHexString(e.getValue()); } label4_1.setBackground(Color.getColor("#"+temp)); label4_1.setText(temp);//+" "+label4_1.getBackground() //为什么setBackground不成功,setText成功了 } });
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(6)
问题我解决了我将选择后的16进制数字两位两位分割,并转成10进制,最后使用:
new Color(int r ,int g ,int b);
Color.getColor()方法的参数没有int类型的,你自己试试
@左撇子: 你可以用构造函数啊 http://static.oschina.net/uploads/doc/javase-6-doc-api-zh_CN/java/awt/Color.html
嗯,你说的很对我把JLable换成JPanel了,Jpanel的setBackground(Color.red)没问题,setBackground(Color.getColor(temp))依然没有反映
Color.getColor("#"+temp); 这个有问题吧,值似乎不对啊
你可以试试把这个语句改为 Color.RED 之类的,看看是否改动能否成功
问题我解决了我将选择后的16进制数字两位两位分割,并转成10进制,最后使用:
new Color(int r ,int g ,int b);