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

مميزات ويندوز 7 الجديدة - Windows 7 New Features

بدأه OsamaGhareeb في 22 نوفمبر 2010 · 4 رد · 3,402 مشاهدة · في قسم الدروس والمواضيع المتميزة
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

images-kji.gif

المقدمة :

سنتعلم اليوم إن شاء الله خطوة بخطوة عن إضافة مميزات ويندوز 7 إلى المشاريع المصممة بـ Visual Studio

ماذا ستحتاح :

  1. Visual Studio 2008 or 2010
  2. Windows 7
  3. أداة WindowsAPICodePack يمكنك تحميلها من http://code.msdn.microsoft.com/WindowsAPICodePack


10.gif

أولاً : قوائم الإنتقال السريع (Jump Lists)

تنقلك الميزة "قوائم الانتقال السريع" - الجديدة في Windows 7- مباشرةً إلى المستندات أو الصور أو الأغاني أو مواقع ويب التي تقوم بتشغيلها كل يوم. لفتح "قائمة الانتقال السريع"، انقر فقط فوق رمز البرنامج بشريط المهام في Windows 7. (كما ستجده أيضاً في القائمة "ابدأ")

ويمكنك إضافة الإختصارات الخاصة بك في هذه القائمة وتصنيفها في فئات إذا أردت , هذه الإختصارات قد تشير إلى أي شيئ مثل :

  1. المستندات المفتوحة مؤخرا
  2. المستندات الجديدة
  3. وظائف البرنامج

هذه الميزة سهلة الإستخدام جداً , لكن هناك بعض النقاط التي يجب أن تعرفها لتستخدمها بنجاح

  1. يجب أن يكون للتطبيق أيقونة في شريط المهام بمعنى خاصية (ShowInTaskbar) للنموذج يجب أن تكون (True)
  2. إذا أردت أن تضيف ملفات خاصة بمشروعك يجب أن تتأكد أن إمتداد الملف متوافق مع البرنامج ومحفوظ بالريجستري للتوضيح صنعنا برنامج لدمج الملفات ووضعنا الملف الناتج بإمتداد "W7F" لذلك يجب أن نسجل إمتداد الملف "W7F" بالريجستري
  3. يمكنك أن تضيف الأدوات في قسم المهام (Tasks) أو قسم المستندات الأخيرة (Recent Sections) في قائمة الإنتقال أو يمكنك إضافة قسم جديد

446860309.png

لإستخدام قوائم الإنتقال السريعة في مشروعك :

  1. إضافة المرجعين Microsoft.WindowsAPICodePack.Shell و Microsoft.WindowsAPICodePack
  2. سنستخدم فضاء الأسماء Microsoft.WindowsAPICodePack.Taskbar و Microsoft.WindowsAPICodePack.Shell
  3. لا يمكنك إضافة الأدوات أو الاقسام في حدث Load ولكن يمكنك في حدث Shown لأنه في حدث Load يكون النموذج قيد الإنشاء ولا يملك ID لذلك لا تعمل الأوامر في حدث Load
  4. تستطيع إضافة الأدوات في قسم المهام (Tasks) أو قسم المستندات الأخيرة (Recent Sections) أو إضافة قسم جديد

الأوامر :

VB


Dim JList As JumpList
JList = JumpList.CreateJumpList()
JList.ClearAllUserTasks()

'إضافة وصلتان في قسم Tasks مع فاصل
Dim Link0 As New JumpListLink("cmd.exe", "Cmd") With {.IconReference =
New IconReference("cmd.exe", 0)}
Dim Link1 As New JumpListLink("Calc.exe", "Calculator") With {.IconReference =
New IconReference("Calc.exe", 0)}
JList.AddUserTasks(Link0)
JList.AddUserTasks(New JumpListSeparator())
JList.AddUserTasks(Link1)

'إنشاء قسم جديد وإضافة الأدوات فيه
Dim Link2 As New JumpListLink("Notepad.exe", "Notepad") With {.IconReference =
New IconReference("Notepad.exe", 0)}
Dim Category As New JumpListCustomCategory("New Category 1")
Category.AddJumpListItems(Link2)
JList.AddCustomCategories(Category)

'إضافة أداة أخرى إلى القسم لكن بدون فاصل
Dim Link3 As New JumpListLink("mspaint.exe", "Paint") With {.IconReference =
New IconReference("mspaint.exe", 0)}
Category.AddJumpListItems(Link3)

' التحكم بقسم المستندات الأخيرة
' Neither عدم العرض
' Frequent عرض الملفات الأكثر إستخداما
' Recent عرض جميع الملفات
JList.KnownCategoryToDisplay = JumpListKnownCategoryType.Frequent

JList.Refresh()

C#


JumpList JList = default(JumpList);
JList = JumpList.CreateJumpList();
JList.ClearAllUserTasks();


//إضافة وصلتان في قسم Tasks مع فاصل
JumpListLink Link0 = new JumpListLink("cmd.exe", "Cmd") { IconReference =
new IconReference("cmd.exe", 0) };
JumpListLink Link1 = new JumpListLink("Calc.exe", "Calculator") {
IconReference = new IconReference("Calc.exe", 0) };
JList.AddUserTasks(Link0);
JList.AddUserTasks(new JumpListSeparator());
JList.AddUserTasks(Link1);

//إنشاء قسم جديد وإضافة الأدوات فيه
JumpListLink Link2 = new JumpListLink("Notepad.exe", "Notepad") {
IconReference = new IconReference("Notepad.exe", 0) };
JumpListCustomCategory Category = new JumpListCustomCategory(
"New Category 1");
Category.AddJumpListItems(Link2);
JList.AddCustomCategories(Category);

//إضافة أداة أخرى إلى القسم لكن بدون فاصل
JumpListLink Link3 = new JumpListLink("mspaint.exe", "Paint") {
IconReference = new IconReference("mspaint.exe", 0) };
Category.AddJumpListItems(Link3);

//التحكم بقسم المستندات الأخيرة
//Neither عدم العرض
//Frequent عرض الملفات الأكثر إستخداما
//Recent عرض جميع الملفات
JList.KnownCategoryToDisplay = JumpListKnownCategoryType.Frequent;

JList.Refresh();

بالنهاية علينا أن نعلم أنه بإمكاننا إضافة أوامر إلى قائمة الإنتقال السريع وتنفيذها في المشروع الخاص بنا وذلك بواسطة الأمر التالي :

VB


Dim JList As JumpList
JList = JumpList.CreateJumpList()
JList.ClearAllUserTasks()

Dim Link As New JumpListLink(Application.ExecutablePath, "Print") With {.IconReference =
New IconReference(Application.ExecutablePath, 0), .Arguments = "Print"}
JList.AddUserTasks(Link)
JList.Refresh()

C#


JumpList JList = default(JumpList);
JList = JumpList.CreateJumpList();
JList.ClearAllUserTasks();

JumpListLink Link = new JumpListLink(Application.ExecutablePath, "Print") {
IconReference = new IconReference(Application.ExecutablePath, 0),
Arguments = "Print"
};
JList.AddUserTasks(Link);
JList.Refresh();

بحيث نقوم بتغيير الكلمة "Print" إلى الأمر الذي نريد إرساله إلى البرنامج لتنفيذه

10.gif

ثانيا : الرمز المركب (Icon Overlay)

هذه الميزة الجديدة في ويندوز 7 تمكنك من التعبير عن حالة المشروع وذلك بوضع رمز صغير فوق رمز المشروع ويكون بالجهة اليمنى من الأسفل

718848102.png

لإستخدام الرمز المركب في مشروعك :

  1. إضافة المرجعين Microsoft.WindowsAPICodePack.Shell و Microsoft.WindowsAPICodePack
  2. سنستخدم فضاء الأسماء Microsoft.WindowsAPICodePack.Taskbar و Microsoft.WindowsAPICodePack.Shell

وهناك الكائن "StockIcon" الذي يمكنك من الوصول إلى أيقونات النظام وإستخدامها

الأوامر :

VB


Dim ID As StockIconIdentifier =StockIconIdentifier.Shield
Dim Size As StockIconSizes =ShellSize
Dim SelectedIcon As New Microsoft.WindowsAPICodePack.Shell.StockIcon(ID, Size, false,
false)
TaskbarManager.Instance.SetOverlayIcon(Me.Handle, SelectedIcon.Icon, "Icon Name")

C#


StockIconIdentifier ID = StockIconIdentifier.Shield;
StockIconSizes Size = ShellSize;
Microsoft.WindowsAPICodePack.Shell.StockIcon SelectedIcon =
new Microsoft.WindowsAPICodePack.Shell.StockIcon(ID, Size, false, false);
TaskbarManager.Instance.SetOverlayIcon(this.Handle, SelectedIcon.Icon, "Icon Name");

IconOverlays2.png

10.gif

ثالثا : شريط التقدم (Progress Bar)

في منطقة الأيقونة للتطبيق في شريط المهام في ويندوز 7 , يمكنك من جعلها بمثابة شريط تقدم , ونرى هذه الخاصية في بعض المتصفحات مثل ( Internet Explorer 8 , Opera)

لإستخدام شريط التقدم في مشروعك :

  1. إضافة المرجعين Microsoft.WindowsAPICodePack.Shell و Microsoft.WindowsAPICodePack
  2. سنستخدم فضاء الأسماء Microsoft.WindowsAPICodePack.Taskbar و Microsoft.WindowsAPICodePack.Shell
  3. لتحديد قيمة الشريط إستخدم الأمر
    TaskbarManager.Instance.SetProgressValue(Value, Maximum , handle )


  4. لتحديد حالة الشريط إستخدم الأمر

    TaskbarManager.Instance.SetProgressState


وتحتوي SetProgressState على خمسة خيارات هي :

246974936.png

NoProgress : عدم عرض أي شريط.

Indeterminate : تقدم غير محدد (أخضر)

Normal : شريط عادي (أخضر)

Error : خطأ (أحمر)

Paused : متوقف مؤقتا (أصفر)

ProgressBar4.png

10.gif

رابعا : شريط الأدوات المصغر (Thumbnail Tool Bars)

317092994.png

شريط الأدوات المصغر يتيح للمستخدمين الوصول إلى البرنامج حتى لو لم يكن البرنامج محددا أو كان وراء نافذة أخرى أو كان مصغراً ويمكنك رؤية هذه الأدوات في برنامج "windows media player"

وهناك قاعدتان لإستخدام هذا الشريط وهما :

  1. أن لا يتجاوز عدد الأزرار 7 وأن يكون حجم الصورة 16 × 16 بكسل
  2. لا يمكنك حذف أي زر بعد إضافته

لإستخدام شريط الأدوات المصغر في مشروعك :

  1. إضافة المرجعين Microsoft.WindowsAPICodePack.Shell و Microsoft.WindowsAPICodePack
  2. سنستخدم فضاء الأسماء Microsoft.WindowsAPICodePack.Taskbar و Microsoft.WindowsAPICodePack.Shell
  3. إضافة الأزرار ThumbnailToolbarButton
  4. لإضافة الأزرار إلى الشريط إستخدم الأمر

    TaskbarManager.Instance.ThumbnailToolbars.AddButtons


الأوامر :

VB


Dim B1Icon As Icon = New StockIcon(StockIconIdentifier.Shield).Icon
Dim B2Icon As Icon = New StockIcon(StockIconIdentifier.Users).Icon
Dim B3Icon As Icon = New StockIcon(StockIconIdentifier.Help).Icon

Dim WithEvents button1 As New ThumbnailToolbarButton(B1Icon, "First Button")
Dim WithEvents button2 As New ThumbnailToolbarButton(B2Icon, "Second Button")
Dim WithEvents button3 As New ThumbnailToolbarButton(B3Icon, "Third Button")

AddHandler button1.Click, AddressOf Button_Click
AddHandler button2.Click, AddressOf Button_Click
AddHandler button3.Click, AddressOf Button_Click

TaskbarManager.Instance.ThumbnailToolbars.AddButtons(Me.Handle, button1, button2, button3)

'You can show or hide the buttons
button1.Visible = Not button1.Visible

'You can enable or disable the buttons
button2.Enabled = Not button2.Enabled

'And you can chnage the button tool tip text
button3.Tooltip = txtTooltip.Text

C#


Icon B1Icon = new StockIcon(StockIconIdentifier.Shield).Icon;
Icon B2Icon = new StockIcon(StockIconIdentifier.Users).Icon;
Icon B3Icon = new StockIcon(StockIconIdentifier.Help).Icon;
ThumbnailToolbarButton button1 =
new Microsoft.WindowsAPICodePack.Taskbar.ThumbnailToolbarButton (B1Icon,
"First Button");
ThumbnailToolbarButton button2 =
new Microsoft.WindowsAPICodePack.Taskbar.ThumbnailToolbarButton(B2Icon,
"Second Button");
ThumbnailToolbarButton button3 =
new Microsoft.WindowsAPICodePack.Taskbar.ThumbnailToolbarButton(B3Icon,
"Third Button");

button1.Click += button_Click;
button2.Click += button_Click;
button3.Click += button_Click;

TaskbarManager.Instance.ThumbnailToolbars.AddButtons(this.Handle,button1,button2,button3);

//You can show or hide the buttons
button1.Visible = !button1.Visible;

//You can enable or disable the buttons
button2.Enabled = !button2.Enabled;

//And you can chnage the button tool tip text
button3.Tooltip = txtTooltip.Text;

Thumbnailtoolbars2.png

10.gif

ولتحميل المشروع من هنا

ولتحميل WindowsAPICodePack من هنا

بالمناسبة هذه الأداة WindowsAPICodePack بها أيضا يمكنك التحكم بالشبكة

وشرح التحكم بالشبكة موجود مع المشروع

10.gif

وصلى الله على سيدنا محمد وعلى أله وصحبه وسلم

تم تعديل هذه المشاركة بواسطة OsamaGhareeb في 22 نوفمبر 2010 في 18:34

2
#2

شكرا لك وبارك الله فيك

تم تعديل هذه المشاركة بواسطة ahmed.alawdi في 24 نوفمبر 2010 في 08:30

قَالُواْ سُبْحَانَكَ لاَ عِلْمَ لَنَا إِلاَّ مَا عَلَّمْتَنَا إِنَّكَ أَنتَ الْعَلِيمُ الْحَكِيمُ

oouo-o10.gif

#3

شكرا اخي بارك الله فيك على التعب ..

وانا اعتب على الادارة والاشراف الذين لم يقيموا موضوع بهذه الاهمية ...

تحياتي العطرة ..

يَارَبُ إِن ضَاقَت قُلُوُب الْنَّاسٍ عَنْ مّافِي .. مِنْ خَيْرٍٍ فَعَفْوكَ لَا يَضِيْقْ ..

#4

شيء رائع جداً . سلمت يداك اخي الكريم .. ولي عودة مع التطبيقات

ان شاء الله تعالى

MagicCreativity.png

 

♥♥♥

♥♥♥

♥♥♥

♥♥♥


Palestine.gif

#5

شكرااااااااااااا الله يعطيك العافيه

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

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

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

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

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