我嘗試將其移動到右側(X ++)每秒鐘如何每秒移動jlabel?
我嘗試將其與移動主題..
- 怎麼辦呢? (並可以看到它每秒移動)
- 還有另一種方法可以在不使用線程的情況下做到這一點嗎?
- 我應該使用什麼樣的佈局管理器?
繼承人我嘗試..
public class help {
JFrame frame = new JFrame();
JLabel label = new JLabel("target");
public help() {
frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
frame.setSize(800,600);
frame.setLayout(new GridLayout());
frame.add(label);
label.setPreferredSize(new Dimension(100,100));
label.setLocation(400, 300);
frame.getContentPane().validate();
frame.repaint();
frame.setVisible(true);
mysterious();
}
void mysterious(){
////////////////////////////////
// part of edit responding David kroukamp
Thread t = new Thread(new Runnable() {
@Override
public void run() {
try{
for (int z=0; z<10; z++){
label.setLocation((label.getLocationOnScreen().x+10), label.getLocationOnScreen().y);
Thread.sleep(1000);
}
}catch(Exception ae){
}
}
});
t.start();
//////////////////////////////
}
public static void main(String[]args){
new help();
}
}
非常感謝任何形式的幫助
^^非常感謝..它的工作..但有一些東西,你能給我提示jlabel的位置y爲什麼會改變嗎? (我編輯我的代碼)..也許有問題沒有3的建議? 感謝您的定時器 –
wew對不起。它的變化,因爲getLocationOnScreen(){我不知道爲什麼}但如果我改變它與getLocation()它返回正常 –
@moprmopr請參閱編輯 –