Tôi là người mới bắt đầu sử dụng Java và tôi đang cố gắng xây dựng một chương trình đồng hồ bấm giờ đơn giản hiển thị thời gian trên giao diện đồ họa swing. Làm cho đồng hồ bấm giờ trở nên dễ dàng, tuy nhiên tôi không thể tìm cách để cập nhật GUI mỗi giây và hiển thị thời gian hiện tại trên đồng hồ bấm giờ. Tôi có thể làm cái này như thế nào?Đồng hồ bấm giờ Java cập nhật GUI mỗi giây?
Trả lời
cái gì đó dọc những dòng này nên làm điều đó:
import java.awt.EventQueue;
import java.util.Timer;
import java.util.TimerTask;
import javax.swing.JFrame;
import javax.swing.JLabel;
/** @see https://stackoverflow.com/a/11058263/230513 */
public class Clock {
private Timer timer = new Timer();
private JLabel timeLabel = new JLabel(" ", JLabel.CENTER);
public Clock() {
JFrame f = new JFrame("Seconds");
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.add(timeLabel);
f.pack();
f.setLocationRelativeTo(null);
f.setVisible(true);
timer.schedule(new UpdateUITask(), 0, 1000);
}
private class UpdateUITask extends TimerTask {
int nSeconds = 0;
@Override
public void run() {
EventQueue.invokeLater(new Runnable() {
@Override
public void run() {
timeLabel.setText(String.valueOf(nSeconds++));
}
});
}
}
public static void main(String args[]) {
EventQueue.invokeLater(new Runnable() {
@Override
public void run() {
final Clock clock = new Clock();
}
});
}
}
Các timeLabel
sẽ luôn hiển thị số giây hẹn giờ đã được chạy.
Tôi đã tạo GUI bằng cách sử dụng trình soạn thảo trực quan từ netbeans, làm thế nào tôi có thể tham chiếu một nhãn bên trong GUI? – Dangerosking
@trashgod phần nào cần invokeLater? – GETah
@GETah Phương thức 'run()' của 'UpdateUITask', vì một java.util.Timer sẽ chạy nó khỏi EDT. – millimoose
- 1. Có đồng hồ bấm giờ trong Java không?
- 2. Đồng hồ bấm giờ hiệu quả
- 3. JavaFX đồng hồ bấm giờ timer
- 4. Powershell hẹn giờ/độ chính xác đồng hồ bấm giờ
- 5. Đồng hồ bấm giờ cho đèn bạc?
- 6. Xuất hiện đồng hồ bấm giờ
- 7. Visual C++ Đồng hồ bấm giờ
- 8. Mẫu quan sát cho đồng hồ bấm giờ
- 9. ViewModel cập nhật mỗi giây?
- 10. Làm cách nào để chuyển đổi các đồng hồ bấm giờ thành giây nano, mili giây và giây?
- 11. Đồng hồ bấm giờ đếm ngược trong C#
- 12. Đồng hồ bấm giờ có bị hỏng không?
- 13. Thêm bộ hẹn giờ hiển thị đếm ngược đang chạy vào ứng dụng iOS, như đồng hồ bấm giờ Đồng hồ?
- 14. Lập hồ sơ các ứng dụng .NET với Đồng hồ bấm giờ
- 15. Đồng ý và chuỗi nhận biết .Net đồng hồ bấm giờ?
- 16. cập nhật JTree trong java GUI
- 17. Cập nhật Android ui từ bộ xử lý mỗi giây
- 18. Đồng hồ động trong java
- 19. Cập nhật múi giờ cập nhật PostgreSQL
- 20. Đồng hồ bấm giờ có thể được sử dụng trong mã sản xuất không?
- 21. Sự khác biệt trong thuộc tính Tàn tích còn lại của Đồng hồ bấm giờ
- 22. Đồng hồ bấm giờ và sử dụng System.DateTime.Now cho các sự kiện thời gian
- 23. Mã điểm chuẩn với Đồng hồ bấm giờ hoặc tương tự
- 24. Dừng đồng hồ bấm giờ từ bên trong Trình nghe hành động
- 25. Subclipse: Đang cập nhật thay đổi phụ kiện SVNStatusSubscriber (CẬP NHẬT - đồng hồ đồng bộ vấn đề)
- 26. bản đồ java cập nhật đồng thời
- 27. Tại sao CLOCKS_PER_SEC không phải là số đồng hồ thực tế mỗi giây?
- 28. Làm cách nào để chuyển đổi thời gian đồng hồ 12 giờ thành giờ đồng hồ 24 giờ bằng PHP?
- 29. NSDateFormatter khi iPhone đặt thành đồng hồ 12 giờ
- 30. d3.js mặc định axis.tickFormat để đồng hồ 24 giờ
Sử dụng lớp 'Hẹn giờ' của Swing'. Thông tin thêm về cách sử dụng 'Timer' có sẵn, ví dụ, [trong câu hỏi và đặc biệt là câu trả lời cho nó.] (Http://stackoverflow.com/q/11053097/613495) – Boro
Xem thêm [answer] này (http://stackoverflow.com/a/5529043/230513). – trashgod
Yea Tôi biết tôi đã có nó ở đâu đó [một trong những câu trả lời của tôi liên quan đến việc sử dụng 'Timer'] (http://stackoverflow.com/a/5911514/613495). @trashgod rất tốt đẹp câu trả lời/mẫu +1 ở đây và +1 có ... và tôi ra khỏi phiếu ... cho ngày hôm nay :) – Boro