سؤال

و. NET مبتدئ هنا ... وأود أن جعل زر في نموذج Windows الذي يعرض التقدم أو "تباطوء" تأثير. وهذا هو، عند الضغط على زر، يصبح من ذوي الاحتياجات الخاصة. كما بعض الأحداث أو مؤقت يسير، يظهر زر التقدم بيانيا. عند الانتهاء من التقدم، الرسم يكمل وزر يصبح تمكين. ويمكن ملاحظة آثار مماثلة في العديد من المباريات.

وكنت قد اعتبرت باستخدام مزيج من بني في الدرجة زر، وظيفة GDI + DrawPath، ولكن تعقيد ميزان سيئة، وأحصل على الشعور الملح التي يجب أن تكون هناك وسيلة أسهل.

وأي أفكار؟ شكرا.

هل كانت مفيدة؟

المحلول

إذا كنت حقا بحاجة ليكون ذلك على الزر، كنت اذهب مع حدث الطلاء المخصصة.

وشيئا من هذا القبيل إلى:

button += new buttonPaintEvent(buttonPaintEventHandlerMethod);

نصائح أخرى

وهذا النهج الأسهل هو إنشاء مثيل من تحكم شريط التقدم ومن ثم لا تحتاج إلى القيام بأي اللوحة المخصصة الترميز / مخصص. إذا كنت حقا بحاجة لعرض كل شيء داخل زر التحكم ثم لديك خيارين. يمكنك الاحتفاظ تغيير الخاصية صورة من زر أو الذهاب حتى النهاية وتنفيذ اللوحة المخصصة الزر. اللوحة المخصصة بسيطة جدا كما تحتاج فقط إلى رسم صورة نص بالإضافة إلى ما تريد.

وسيلة سهلة آخر قد يكون لديك اثنين من الضوابط، زر وشريط التقدم التي تشغل نفس المساحة في النموذج. عندما يضغط المستخدم على الزر، إخفاء زر وإظهار شريط التقدم. تحديث شريط التقدم حسب الحاجة حتى مهما معالجة هو القيام به. ثم، إخفاء شريط التقدم وتظهر على الزر مرة أخرى.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top