منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
[VB.NET] استفسار بخصوص الفورم دائما في المقدمة - نسخة قابلة للطباعة

+- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb)
+-- قسم : قسم لغة الفيجوال بيسك VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=182)
+--- قسم : قسم اسئلة VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=183)
+--- الموضوع : [VB.NET] استفسار بخصوص الفورم دائما في المقدمة (/showthread.php?tid=29786)



استفسار بخصوص الفورم دائما في المقدمة - sniperjawadino - 11-06-19

سلام إخواني

بخصوص جعل الفورم في المقدمة
 أريد منكم أحد الأفكار لكي يشتغل الفورم دائما في المقدمة مهما حدث و مهما كان
بحيث لا يأخد منه أحد البرامج الخارجية التركيز
 
أريد أن أنوه أن كود me.TopMost = True   غير شغال حتى بعد وضعه في التايمر
طبعا يشتغل في غالب الأحيان لكن عند حدوت Refresh للبرناج الخارجي فإنه يختفي يصبح وراه 

الغريب في الأمر أن بحث في غوغل كثيرا ووجدت هذا المشكل عند الكثير سواء في المواقع العربية أو الأجنبية
و أنا كنت أستخدم كود رائع في الفيجوال بيسك 6 و شغال فوق جميع البرامج
حتى التي تستخدم الفلاش و الألعاب و ActiveX
هاذا  هو الكود
هل يوجد مقابل له في VB.NET




RE: استفسار بخصوص الفورم دائما في المقدمة - zinom - 11-06-19

(11-06-19, 12:14 AM)sniperjawadino كتب : سلام إخواني

بخصوص جعل الفورم في المقدمة
 أريد منكم أحد الأفكار لكي يشتغل الفورم دائما في المقدمة مهما حدث و مهما كان
بحيث لا يأخد منه أحد البرامج الخارجية التركيز
 
أريد أن أنوه أن كود me.TopMost = True   غير شغال حتى بعد وضعه في التايمر
طبعا يشتغل في غالب الأحيان لكن عند حدوت Refresh للبرناج الخارجي فإنه يختفي يصبح وراه 

الغريب في الأمر أن بحث في غوغل كثيرا ووجدت هذا المشكل عند الكثير سواء في المواقع العربية أو الأجنبية
و أنا كنت أستخدم كود رائع في الفيجوال بيسك 6 و شغال فوق جميع البرامج
حتى التي تستخدم الفلاش و الألعاب و ActiveX
هاذا  هو الكود
هل يوجد مقابل له في VB.NET




RE: استفسار بخصوص الفورم دائما في المقدمة - sniperjawadino - 11-06-19

شكرا أخي [b]zinom[/b]

لكن كما ذكرت سالفا  أن كود me.TopMost = True  رغم وجوده فالفورم يختفي في بعض الأحيان
كما أنه لا يجدي نفعا أمام واجهات اللعاب
أو الفلاش أو ActiveX

فهل هناك حل أخر أكثر قوة


RE: استفسار بخصوص الفورم دائما في المقدمة - ابراهيم ايبو - 12-06-19

السلام عليكم اخي الكريم
موضوعك بعد البحث لم اجريه ولم اتأكد من الاكواد   

تابع هذه الروابط 


هذا
http://forums.codeguru.com/showthread.php?406134-How-to-make-a-form-ALWAYS-ON-TOP!
او هذا
https://www.codeproject.com/Questions/91830/Making-a-Form-stay-on-top-of-ALL-other-application


RE: استفسار بخصوص الفورم دائما في المقدمة - zinom - 12-06-19

(11-06-19, 05:37 PM)sniperjawadino كتب : شكرا أخي [b]zinom[/b]

لكن كما ذكرت سالفا  أن كود me.TopMost = True  رغم وجوده فالفورم يختفي في بعض الأحيان
كما أنه لا يجدي نفعا أمام واجهات اللعاب
أو الفلاش أو ActiveX

فهل هناك حل أخر أكثر قوة

تمام - 
سؤال:  الفورم بيختفي == يكون شفاف مش ظاهر - والا بيكون خلف اطار اللعبه ؟
طلب : صورة توضيحيه - فديو توضيحي صغير- مثال بسيط  إن امكن


RE: استفسار بخصوص الفورم دائما في المقدمة - zinom - 14-06-19

طيب نظرا لعدم متابعتك لموضوعك وحتي لا انسي 
سؤالي لان الالوان لها عامل اساسي في الشفافيه الخاصه بالفوره 
معرفش ان كان خطأ في الفيجوال ستوديو والا مقصوده - ده من خلال تجارب سابقه معها مع تعديل بعض خصائص الفورم


RE: استفسار بخصوص الفورم دائما في المقدمة - elgokr - 14-06-19

وعليكم السلام ورحمة الله وبركاته

ولذال هذا الكود يعمل حتى الان فى VB.NET
فقط لاتمام الكود بصورة صحيحة 

طبق الكود التالى
كود :
   Private Declare Function SetWindowPos Lib "user32.dll" (ByVal hwnd As Int32, ByVal hWndInsertAfter As Int32, ByVal x As Int32, ByVal y As Int32, ByVal cx As Int32, ByVal cy As Int32, ByVal wFlags As Int32) As Int32
   Const HWND_TOPMOST = -1
   Const HWND_NOTOPMOST = -2
   Const SWP_NOSIZE = &H1
   Const SWP_NOMOVE = &H2
   Const SWP_NOACTIVATE = &H10
   Const SWP_SHOWWINDOW = &H40

من ثم فى حدث لود الفورم
كود :
SetWindowPos(Handle, HWND_TOPMOST, Left / 15, Top / 15, Width / 15, Height / 15, SWP_NOACTIVATE Or SWP_SHOWWINDOW Or SWP_NOMOVE Or SWP_NOSIZE)

وبكدة ستجد الفورم يعمل بدون اى عناء مهما كانت
وسيبقي فى المقدمة دائماً

تحياتى لك
وتمنياتى لك التوفيق



RE: استفسار بخصوص الفورم دائما في المقدمة - sniperjawadino - 19-06-19

شكرا لك أخي zinom كود الأخ الجوكر اشتغل بعد التعديل
اعتذر لعدم الرد بسبب ضغط العمل

أخي الجوكر الكل تمام
لم يبقى لي ما أقول
شكرا


RE: استفسار بخصوص الفورم دائما في المقدمة - sary - 20-06-19

(11-06-19, 12:14 AM)sniperjawadino كتب : سلام إخواني

بخصوص جعل الفورم في المقدمة
 أريد منكم أحد الأفكار لكي يشتغل الفورم دائما في المقدمة مهما حدث و مهما كان
بحيث لا يأخد منه أحد البرامج الخارجية التركيز
 
أريد أن أنوه أن كود me.TopMost = True   غير شغال حتى بعد وضعه في التايمر
طبعا يشتغل في غالب الأحيان لكن عند حدوت Refresh للبرناج الخارجي فإنه يختفي يصبح وراه 

الغريب في الأمر أن بحث في غوغل كثيرا ووجدت هذا المشكل عند الكثير سواء في المواقع العربية أو الأجنبية
و أنا كنت أستخدم كود رائع في الفيجوال بيسك 6 و شغال فوق جميع البرامج
حتى التي تستخدم الفلاش و الألعاب و ActiveX
هاذا  هو الكود
هل يوجد مقابل له في VB.NET



تحويل الكود إلى VB.NET
PHP كود :
<Runtime.InteropServices.DllImport("user32.dll")> _
Private Shared Function SetWindowPos(hWnd As IntPtrhWndInsertAfter As IntPtrAs IntegerAs Integercx As Integercy As IntegeruFlags As Integer) As Boolean
End 
Function

Private 
Sub Form1_Load(sender As ObjectAs EventArgsHandles MyBase.Load
    SetWindowPos
(Me.Handle, -1Me.LeftMe.TopMe.WidthMe.Height0)
End Sub 



RE: استفسار بخصوص الفورم دائما في المقدمة - elgokr - 21-06-19

الشكر لله والحمد لله
والحمد لله على كل حال

تحياتى لك
وتمنياتى لك التوفيق