السلام عليكم
أقوم حالياً بعمل برنامج عبارة عن ساعة تعرض الوقت من السيستم. طبعاً استخدمت Thread لتحديث عرض الوقت كل ثانية.
أريد أن أضيف خيار للمستخدم بتعديل الساعة في البرنامج عن طريق setHour() و setMinute ... لكن المشكلة أن الـThread لا يعتمد التعديلات التي يدخلها المستخدم. بل يعرضها لفترة أقل من ثانية ومن ثم يرجع لتوقيت النظام.
للتوضيح:
public void run(){
try {
while(true) {
java.util.Date() theDate = new java.util.Date();
Thread.sleep(1000);
}
} catch(InterruptedException e) {}
في كل ثانية يأخذ الثريد توقيت النظام. ولا ينتبه للتغير الذي يحدثه الميثود theDate.setHour(int x) الموجود خارج الـ run ميثود.
أرجو أن تفيدوني بطريقة أجعل تغيير الوقت في هذا البرنامج ممكناً