المشاركات : 138
المواضيع 1
:
: 4
الإنتساب : Feb 2016
السلام عليكم ورحمة الله وبركاته
اقوم باستخدام Tmonitors لأعرض فورم على الشاشة الثانية في وضع ملئ الشاشة.
كيف أحافظ على هذا الفورم مفتوح عند قيام المستخدم بتصغير الفورم الرئيسي على الشاشة الأولى؟
لأنه طبعا عند تصغير التطبيق يذهب بكامله إلى شريط المهام.
المشاركات : 138
المواضيع 1
:
: 4
الإنتساب : Feb 2016
أيضاً, أريد أن أحافظ عليه حتى عندما يقوم المستخدم بإظهار سطح المكتب, Show desktop!!
المشاركات : 3,703
المواضيع 101
:
: 579
الإنتساب : Feb 2008
وعليكم السلام ورحمة الله وبركاته
كافكار سريعة
يمكن قنص رسالة التصغير minimize message
يمكن جعل فورم الشاشة الثانية هو الفورم الرئيس MainForm ويظهر الشاشة الاولى عند اول تنفيذ ويخفي نفسه
يمكن تقسيم التطبيق الى اثنين واحد لكل شاشة ويتم التخاطب بينهما inter process communication
...
رَبَّنَا اغْفِرْ لِي وَلِوَالِدَيَّ وَلِلْمُؤْمِنِينَ يَوْمَ يَقُومُ الْحِسَابُ
المشاركات : 138
المواضيع 1
:
: 4
الإنتساب : Feb 2016
20-04-2016, 06:51 PM
(آخر تعديل لهذه المشاركة: 20-04-2016, 07:12 PM بواسطة PLANSHARP.)
نعم جزاك الله خيرا
تقسيم التطبيق إلى اثنين يبدو لي الأفضل, تبقى المحاولة جارية من أجل تجاوز SHOW DESKTOP, و إبقاء البرنامج FULL SCREEN.
أعتقد أنني وجدت الحل:
إذا قمنا بعطيل زر minimize للفورم, و جعلنا الفورم stayontop.
ثم في حدث onShow:
كود :
setwindowlong(getwindow(self.Handle,GW_OWNER),GWL_STYLE,0);
setwindowlong(getwindow(self.Handle,GW_OWNER),GWL_EXSTYLE,0);
self.OnShow:=nil;
وبهذا نتجاوز Show Desktop.
تنويه: لا أنصح بإستخدام هذه الخاصية لأنها تجعل المستخدم يكره البرنامج, تخيل أنك تقوم بتصغير كل البرامج لترى سطح مكتبك و يبقى برنامج واحد لا يقبل ذلك, ربما ستقوم بإغلاقه للأبد.
ولكن في حالتي فأنا أستخدمه فقط على الشاشة الثانية و التي من المفترض أن المستخدم قد وضع البرنامج لأجلها!!
المشاركات : 3,703
المواضيع 101
:
: 579
الإنتساب : Feb 2008
فكرة اخرى دون تقسيم التطبيق الى اثننين، جعل الفورم2 في مكتبة DLL واستدعائها، هنا عند تصغير الفورم الاول يبقى الثاني
رَبَّنَا اغْفِرْ لِي وَلِوَالِدَيَّ وَلِلْمُؤْمِنِينَ يَوْمَ يَقُومُ الْحِسَابُ
المشاركات : 138
المواضيع 1
:
: 4
الإنتساب : Feb 2016
نعم, مرة أخرى جزاك الله خيراً, قمت بتجريب الأخيرة, وتم بذلك حل مشكلة minimize, وقمت بإضافة الجزء الثانية وهو منع show desktop من تصغير برنامجي.
وبهذا تمت بنجاح.