你设置他的layoutprames就可以了
专注于为中小企业提供成都网站建设、网站建设服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业嘉禾免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了1000+企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。
FrameLayout.LayoutParams layoutParams = new FrameLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT);
layoutParams.setMargins(0,0,0,0);//这里动态设置他的数值就行了,你说滚动设置,你在滚动监听里设置就行了。
import java.awt.event.*;
import java.awt.*;
import javax.swing.*;
public class Demo10 extends JFrame implements ItemListener,
KeyListener
{
String s[] = { "吉林", "辽宁", "黑龙江" };
JComboBox jb1 = new JComboBox(s);
JLabel jla = new JLabel("吉林");
JPanel panel = new JPanel();
String defaultMessage="请输入城市名";
Component cmp;
public Demo10() {
jb1.setEditable(true);
panel.add(jb1);
panel.add(jla);
this.getContentPane().add(panel);
this.setBounds(100, 100, 300, 300);
this.setDefaultCloseOperation(EXIT_ON_CLOSE);
this.setVisible(true);
jb1.addItemListener(this);
cmp = jb1.getEditor().getEditorComponent();
cmp.addKeyListener(this);
}
public static void main(String[] args) {
new Demo10();
}
public void itemStateChanged(ItemEvent e){
jla.setText(e.getItem().toString());
}
public void keyPressed(KeyEvent e)
{
}
public void keyReleased(KeyEvent e)
{
jla.setText(jb1.getEditor().getItem().toString());
repaint();
}
public void keyTyped(KeyEvent e)
{
}
}
已经测试过了。可以实现用户在编辑item时,获取编辑后的值
label.setText(new Date().toString());
这是只显示一次,如果要是想要变成动态的,就要加线程事件了。
new Thread(new Runnable() {
@Override
public void run() {
while(true){
label.setText(new Date().toString());
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}).start();