بتاريخ: 15 يوليو 200817 سنة comment_133330 بسم الله الرحمن الرحيماخواني الاعزاء قمت بانشاء شاشتين الاولى شاشة ترحيبية (main)يتم عرض فيها tow timer الاول جملة welcom والاخر يقوم بعرض الساعة .المشكلة انني عندما اريد الدخول الى الشاشة الثانية (screen2) , اريد التايمر ان يتوقف كليا,طبعا كتبت اكثر من كود بدون فائدة ...كود تعريف التايمر في الشاشة الترحيبية main WHEN-NEW-FORM-INSTANCE DECLARE TIM TIMER; BEGIN TIM := CREATE_TIMER('T1',50); END; ---------------------------------------------------------------- declare tim timer; begin tim :=create_timer('tim1',1000,repeat); end; ويوجد زر عن طريقة يتم الدخول الى الشاشة الثانية (screen2) عن طريق call_form('screen2') هل يفضل open_form بدل call_form ?????ومباشرة في الشاشة الثانية على WHEN-NEW-FORM-INSTANCEاقوم باستدعاء بروسيجر يقوم بحذف التايمر CANCEL_TIMER('T1'); CANCEL_TIMER('tim1'); وهذا هو كود البروسيجر PROCEDURE CANCEL_TIMER (P_TIMER_NAME IN VARCHAR2 ) IS tm_id Timer; BEGIN tm_id := Find_Timer( P_TIMER_NAME ); IF NOT Id_Null(tm_id) THEN Delete_Timer(tm_id); ELSE Message('Timer '||P_TIMER_NAME||' has already been cancelled.'); END IF; END; والمشكلة انه دائما يعطي عبارة ELSE Message('Timer '||P_TIMER_NAME||' has already been cancelled.'); على اساس ان التايمر غير موجود .طبعا الكيرسر دائما يعمل ( ينبض ) مما يدل على ان التايمر يعمل ....قاصدكم يا اهل الخبرة ... تقديم بلاغ
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.