الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

الى جمع الاعضاء كيف يتم اخفاء (Menu) عن طريق الكود

مغلق
بدأه abualrub في 9 مايو 2006 · 12 رد · 900 مشاهدة · في لغة Ms Visual Basic 6 وما قبلها من إصدارات
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

انا بحاجة للمساعدة من اعضاء النتدى والمشرفين عليه...

انا عملت برنامج ولكن ما اردته هو عند الضغط على زر Command ان يقوم بإخفاء Menu ولم استطع،، اذا كان ممكنا ان تساعدوني وشكرا..................

#2

هناك طريقة لا أعلم مدى صحة إستخدامها . سأذكرها لك و عليك كتابة الكود (بامكاني اعطاء كود بالدلفي)

1) يتم التصريح بمتغير عام من النوع HMENU وليكن Menuhandle وهو عبارة عن مقبض لقائمة وتسند له القيمة صفر.

2) لإخفاء القائمة يتم التحقق من كون Menuhandle تساوي الصفر ثم يتم استدعاء الدالة GetMenu للحصول على مقبض النافذه المستهدفه (لا بد من معرفة مقبضها) وتسند القيمة المرجعة للمتغيرMenuhandle

Menuhandle:=GetMenu(Windowhandle);

ثم نستدعي SetMenu باسناد 0 للمتغير الثاني فيها

SetMenu(Windowhandle,0);

3)لإظهارها مرة أخرى تستدعى الدالة SetMenu باسناد Menuhandle كقيمة للمتغير الثاني فيها ,ثم تسند القيمة صفر لـ Menuhandle

SetMenu(Windowhandle,Menuhandle);
Menuhandle:=0;

سيصبح الكود

var
  Menuhandle:HMENU=0;

procedure TForm1.Button1Click(Sender: TObject);
begin
if Menuhandle = 0 then
begin
Menuhandle:=GetMenu(Windowhandle);
SetMenu(Windowhandle,0);
end
else
begin
SetMenu(Windowhandle,Menuhandle);
Menuhandle:=0;
end;
end;

بقي عليك تغيير الكود الى فيجوال بيسك .

أي أخطاء في الرد المعذرة .

تحياتي

-التعديل : أخطاء أثناء كتابة الرد :) -

تم تعديل هذه المشاركة بواسطة cipher في 9 مايو 2006 في 17:35

"First they ignore you, then they laugh at you, then they attack you, then you win"

===

اقتباس

حُكَّامُـنَا إِنْ تَصَـدّوا لِلْحِمَــى اقْتَحَمُـوا ***** وَإِنْ تَصَدَّى لَـهُ المُسْتَعْمِـرُ انْسَحَبُـوا

هُمْ يَفْرشـُونَ لِجَيْـشِ الغَــزْوِ أَعْيُنَـهُـمْ ***** وَيَدَّعُــونَ وُثُـوبَـاً قَـبْـلَ أَنْ يَثِـبُــوا

الحَاكِمُـونَ و«وَاشُنْـطُـنْ» حُكُومَتُـهُـمْ ***** وَاللامِعُــونَ وَمَـا شَعَّـوا وَلا غَرَبُــوا

القَاتِلُـــونَ نُبُــوغَ الشَّـعْــبِ تَرْضِـيَـــةً ***** لِلْمُعْتَدِيــنَ وَمَـا أَجْـدَتْـهُـمُ الـقُــرَبُ

لَهُمْ شُمُـوخُ «المُثَنَّـى» ظَاهِـرَاً وَلَهُـمْ ***** هَـوَىً إِلَـى بَابَـك الخَرْمِـيّ يُنْتَسَـبُ

البردوني "أبو تمام وعروبة اليوم" 1971

===

اقتباس
عبيد الهوى يحكمون البـلاد ***** ويحكمهــم كلّهـــم درهــــــم

و تقتـادهـم شهـوة لا تنــام ***** وهـــم فـي جـهالتهــم نــــوّم

ففــي كـــلّ ناحيــة ظـالـــم ***** غبــــــيّ يسـلـّطــــه أظلـــم

أيا من شبعتم على جوعــنا ***** وجـــوع بنينـا ألـم تتخمـــوا ؟

ألم تفهموا غضبة الكادحين ***** على الظلـم ؟ لا بدّ أن تفهموا

البردوني "نحن و الحاكمون "

#3

السلام عليكم

تقريباا الموضوع اسهل من كده مثلاا عندن fORM1 وفيها قائمه اسمها FOLDER ففمكن اخفائها بالكود :

fORM1.FOLDER.VISIBLE=FALSE وانا كنت عاملها فى برنامج بس خافى عنصر فى القاءمه وتقريباا ممكن نخفيها كلها

مدونة مهندس ميكانيكى

“Any fool can make things bigger, more complex, and more violent”

#4

يبدو أن الفيجوال بيسك تقدم كحل كالذي أشار اليه الأخ FemTo .

عذراً فلست أبرمج على الفيجوال بيسك لذا وضعت حلاً ينفع لأغلب اللغات :D

"First they ignore you, then they laugh at you, then they attack you, then you win"

===

اقتباس

حُكَّامُـنَا إِنْ تَصَـدّوا لِلْحِمَــى اقْتَحَمُـوا ***** وَإِنْ تَصَدَّى لَـهُ المُسْتَعْمِـرُ انْسَحَبُـوا

هُمْ يَفْرشـُونَ لِجَيْـشِ الغَــزْوِ أَعْيُنَـهُـمْ ***** وَيَدَّعُــونَ وُثُـوبَـاً قَـبْـلَ أَنْ يَثِـبُــوا

الحَاكِمُـونَ و«وَاشُنْـطُـنْ» حُكُومَتُـهُـمْ ***** وَاللامِعُــونَ وَمَـا شَعَّـوا وَلا غَرَبُــوا

القَاتِلُـــونَ نُبُــوغَ الشَّـعْــبِ تَرْضِـيَـــةً ***** لِلْمُعْتَدِيــنَ وَمَـا أَجْـدَتْـهُـمُ الـقُــرَبُ

لَهُمْ شُمُـوخُ «المُثَنَّـى» ظَاهِـرَاً وَلَهُـمْ ***** هَـوَىً إِلَـى بَابَـك الخَرْمِـيّ يُنْتَسَـبُ

البردوني "أبو تمام وعروبة اليوم" 1971

===

اقتباس
عبيد الهوى يحكمون البـلاد ***** ويحكمهــم كلّهـــم درهــــــم

و تقتـادهـم شهـوة لا تنــام ***** وهـــم فـي جـهالتهــم نــــوّم

ففــي كـــلّ ناحيــة ظـالـــم ***** غبــــــيّ يسـلـّطــــه أظلـــم

أيا من شبعتم على جوعــنا ***** وجـــوع بنينـا ألـم تتخمـــوا ؟

ألم تفهموا غضبة الكادحين ***** على الظلـم ؟ لا بدّ أن تفهموا

البردوني "نحن و الحاكمون "

#5

حل ولا أروع أخى cipher

حاولت تحويل الكود للفيجوال بيسيك و لكنى لم أجد تعريف للدالة setmenu هل هى من دوال ال user32.dll زى الgetmenu أم ماذا؟

لا تراجع و لا إستسلام

#6

هذا ما ذكر في MSDN :

SetMenu

Function Information

Minimum DLL Version user32.dll 
Header Declared in Winuser.h, include Windows.h 
Import library User32.lib 
Minimum operating systems Windows 95, Windows NT 3.1 
Unicode Implemented as Unicode version

"First they ignore you, then they laugh at you, then they attack you, then you win"

===

اقتباس

حُكَّامُـنَا إِنْ تَصَـدّوا لِلْحِمَــى اقْتَحَمُـوا ***** وَإِنْ تَصَدَّى لَـهُ المُسْتَعْمِـرُ انْسَحَبُـوا

هُمْ يَفْرشـُونَ لِجَيْـشِ الغَــزْوِ أَعْيُنَـهُـمْ ***** وَيَدَّعُــونَ وُثُـوبَـاً قَـبْـلَ أَنْ يَثِـبُــوا

الحَاكِمُـونَ و«وَاشُنْـطُـنْ» حُكُومَتُـهُـمْ ***** وَاللامِعُــونَ وَمَـا شَعَّـوا وَلا غَرَبُــوا

القَاتِلُـــونَ نُبُــوغَ الشَّـعْــبِ تَرْضِـيَـــةً ***** لِلْمُعْتَدِيــنَ وَمَـا أَجْـدَتْـهُـمُ الـقُــرَبُ

لَهُمْ شُمُـوخُ «المُثَنَّـى» ظَاهِـرَاً وَلَهُـمْ ***** هَـوَىً إِلَـى بَابَـك الخَرْمِـيّ يُنْتَسَـبُ

البردوني "أبو تمام وعروبة اليوم" 1971

===

اقتباس
عبيد الهوى يحكمون البـلاد ***** ويحكمهــم كلّهـــم درهــــــم

و تقتـادهـم شهـوة لا تنــام ***** وهـــم فـي جـهالتهــم نــــوّم

ففــي كـــلّ ناحيــة ظـالـــم ***** غبــــــيّ يسـلـّطــــه أظلـــم

أيا من شبعتم على جوعــنا ***** وجـــوع بنينـا ألـم تتخمـــوا ؟

ألم تفهموا غضبة الكادحين ***** على الظلـم ؟ لا بدّ أن تفهموا

البردوني "نحن و الحاكمون "

#7

شكرا جزيلا أخى cipher

وهذه هو الكود بالفيجوال بيسيك

dim hmenu as long
hmenu = 0
private sub command1_click()

if hmenu = 0 then
hmenu = getmenu(me.hwnd)
setmenu(me.hwnd,0)
else
setmenu(me.hwnd,hmenu)
end if

لا تراجع و لا إستسلام

#8

و لكن أخى cipher هل يمكن أخفاء القائمة لبرنامج آخر

نفرض إن مثلا عرفت ال handleبتاع نافذة بالدالة findwindow مثلا هل أستطيع ؟ و لماذا ؟

لا تراجع و لا إستسلام

#9

الكود فيه جزء ناقص

else
setmenu(me.hwnd,hmenu)
hmenu =0
end if

اقتباس
و لكن أخى cipher هل يمكن أخفاء القائمة لبرنامج آخر

نفرض إن مثلا عرفت ال handleبتاع نافذة بالدالة findwindow مثلا هل أستطيع ؟ و لماذا ؟

في الغالب يمكنك إخفاء قائمة برامج أخرى بمعرفة الـ handle الخاص بالنافذة التي تحوي القائمة . ربما أحيانا قد تحتاج لصلاحيات ما لعمل ذلك إعتماداً على الـ process المستهدفه أو لأسباب أخرى قد تعيق هذه العملية ...

قبل قليل عملت تجربه على احدى نوافذ notepad وتم الأمر بنجاح ..

"First they ignore you, then they laugh at you, then they attack you, then you win"

===

اقتباس

حُكَّامُـنَا إِنْ تَصَـدّوا لِلْحِمَــى اقْتَحَمُـوا ***** وَإِنْ تَصَدَّى لَـهُ المُسْتَعْمِـرُ انْسَحَبُـوا

هُمْ يَفْرشـُونَ لِجَيْـشِ الغَــزْوِ أَعْيُنَـهُـمْ ***** وَيَدَّعُــونَ وُثُـوبَـاً قَـبْـلَ أَنْ يَثِـبُــوا

الحَاكِمُـونَ و«وَاشُنْـطُـنْ» حُكُومَتُـهُـمْ ***** وَاللامِعُــونَ وَمَـا شَعَّـوا وَلا غَرَبُــوا

القَاتِلُـــونَ نُبُــوغَ الشَّـعْــبِ تَرْضِـيَـــةً ***** لِلْمُعْتَدِيــنَ وَمَـا أَجْـدَتْـهُـمُ الـقُــرَبُ

لَهُمْ شُمُـوخُ «المُثَنَّـى» ظَاهِـرَاً وَلَهُـمْ ***** هَـوَىً إِلَـى بَابَـك الخَرْمِـيّ يُنْتَسَـبُ

البردوني "أبو تمام وعروبة اليوم" 1971

===

اقتباس
عبيد الهوى يحكمون البـلاد ***** ويحكمهــم كلّهـــم درهــــــم

و تقتـادهـم شهـوة لا تنــام ***** وهـــم فـي جـهالتهــم نــــوّم

ففــي كـــلّ ناحيــة ظـالـــم ***** غبــــــيّ يسـلـّطــــه أظلـــم

أيا من شبعتم على جوعــنا ***** وجـــوع بنينـا ألـم تتخمـــوا ؟

ألم تفهموا غضبة الكادحين ***** على الظلـم ؟ لا بدّ أن تفهموا

البردوني "نحن و الحاكمون "

#10

إضافة :

بعد محاولى على المتصفح IE لم يتم تنفيذ الكود وكما ذكرت سابقاً ربما نحتاج لصلاحيات لعمل ذلك .

ربما حقن dll في الـ process يفي بالغرض . حلول أخرى وارده أيضاً ....

سأحاول مع الـ IE حين أجد الوقت لذلك ...

"First they ignore you, then they laugh at you, then they attack you, then you win"

===

اقتباس

حُكَّامُـنَا إِنْ تَصَـدّوا لِلْحِمَــى اقْتَحَمُـوا ***** وَإِنْ تَصَدَّى لَـهُ المُسْتَعْمِـرُ انْسَحَبُـوا

هُمْ يَفْرشـُونَ لِجَيْـشِ الغَــزْوِ أَعْيُنَـهُـمْ ***** وَيَدَّعُــونَ وُثُـوبَـاً قَـبْـلَ أَنْ يَثِـبُــوا

الحَاكِمُـونَ و«وَاشُنْـطُـنْ» حُكُومَتُـهُـمْ ***** وَاللامِعُــونَ وَمَـا شَعَّـوا وَلا غَرَبُــوا

القَاتِلُـــونَ نُبُــوغَ الشَّـعْــبِ تَرْضِـيَـــةً ***** لِلْمُعْتَدِيــنَ وَمَـا أَجْـدَتْـهُـمُ الـقُــرَبُ

لَهُمْ شُمُـوخُ «المُثَنَّـى» ظَاهِـرَاً وَلَهُـمْ ***** هَـوَىً إِلَـى بَابَـك الخَرْمِـيّ يُنْتَسَـبُ

البردوني "أبو تمام وعروبة اليوم" 1971

===

اقتباس
عبيد الهوى يحكمون البـلاد ***** ويحكمهــم كلّهـــم درهــــــم

و تقتـادهـم شهـوة لا تنــام ***** وهـــم فـي جـهالتهــم نــــوّم

ففــي كـــلّ ناحيــة ظـالـــم ***** غبــــــيّ يسـلـّطــــه أظلـــم

أيا من شبعتم على جوعــنا ***** وجـــوع بنينـا ألـم تتخمـــوا ؟

ألم تفهموا غضبة الكادحين ***** على الظلـم ؟ لا بدّ أن تفهموا

البردوني "نحن و الحاكمون "

#11

سأجرب علي ال ie لاحقا , لكن للأسف لن أستطيع عمل ال dll بالفيجوال بيسيك سأضطر للجوء للسى أو الدلفى ( خبرتى بها ضعيفة )

شكرا

و على فكرة الكود ظاهر عندى كامل و الكود اللى أنت كتبته أنا كنت كاتبه فوق

تم تعديل هذه المشاركة بواسطة net_code في 9 مايو 2006 في 22:04

لا تراجع و لا إستسلام

#12

الموضوع بسيط يا حبيبي..

الاسم البرمجي للقائمة.visable = True
#13

غريبه!

انا كنت واضع رد آخر في هذا الموضوع !

ماجددج كتب:
الموضوع بسيط يا حبيبي..

الاسم البرمجي للقائمة.visable = True

ما ذكره الأخ FemTo هو نفس الشئ وإن كان عام أكثر ...

طبعاً الطريقة فقط تنفع في نفس التطبيق ...

"First they ignore you, then they laugh at you, then they attack you, then you win"

===

اقتباس

حُكَّامُـنَا إِنْ تَصَـدّوا لِلْحِمَــى اقْتَحَمُـوا ***** وَإِنْ تَصَدَّى لَـهُ المُسْتَعْمِـرُ انْسَحَبُـوا

هُمْ يَفْرشـُونَ لِجَيْـشِ الغَــزْوِ أَعْيُنَـهُـمْ ***** وَيَدَّعُــونَ وُثُـوبَـاً قَـبْـلَ أَنْ يَثِـبُــوا

الحَاكِمُـونَ و«وَاشُنْـطُـنْ» حُكُومَتُـهُـمْ ***** وَاللامِعُــونَ وَمَـا شَعَّـوا وَلا غَرَبُــوا

القَاتِلُـــونَ نُبُــوغَ الشَّـعْــبِ تَرْضِـيَـــةً ***** لِلْمُعْتَدِيــنَ وَمَـا أَجْـدَتْـهُـمُ الـقُــرَبُ

لَهُمْ شُمُـوخُ «المُثَنَّـى» ظَاهِـرَاً وَلَهُـمْ ***** هَـوَىً إِلَـى بَابَـك الخَرْمِـيّ يُنْتَسَـبُ

البردوني "أبو تمام وعروبة اليوم" 1971

===

اقتباس
عبيد الهوى يحكمون البـلاد ***** ويحكمهــم كلّهـــم درهــــــم

و تقتـادهـم شهـوة لا تنــام ***** وهـــم فـي جـهالتهــم نــــوّم

ففــي كـــلّ ناحيــة ظـالـــم ***** غبــــــيّ يسـلـّطــــه أظلـــم

أيا من شبعتم على جوعــنا ***** وجـــوع بنينـا ألـم تتخمـــوا ؟

ألم تفهموا غضبة الكادحين ***** على الظلـم ؟ لا بدّ أن تفهموا

البردوني "نحن و الحاكمون "

هذا الموضوع مغلق.

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…