كيفية معالجة الأحداث PowerPoint باستخدام Visual Basic .NET 2003

انتهاء دعم Office 2003

لقد أنهت شركة Microsoft دعم Office 2003 في 8 أبريل، 2014. وقد أثر هذا التغيير على تحديثات البرامج لديك وخيارات الأمان الخاصة بك. تعرف على ما يعنيه ذلك فيما يتعلق بك وكيفية الحفاظ على حمايتك.

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

اضغط هنا لرابط المقالة باللغة الانجليزية824021
مقدمة حول
توضح هذه المقالة كيفية معالجة أحداث Microsoft Office PowerPoint من عميل التنفيذ التي تم تطويرها باستخدام Microsoft Visual Basic .NET 2003.

إنشاء معالج الأحداث

يمكنك استخدام إحدى الطرق التالية إنشاء معالج أحداث باستخدام Visual Basic .NET. يعتمد الأسلوب الذي تختاره على كيفية اقتران معالج الأحداث مع حدث.
  • الطريقة الأولى

    عادةً ما تقوم بإنشاء معالج حدث باستخدام الكلمة الأساسية مؤشرات بواسطة الكلمة الأساسية WithEvents. عند تعريف متغير مرجع كائن باستخدام الكلمة الأساسية WithEvents Visual Basic .NET تلقائياً يتصل أحداث الكائن في وقت التشغيل. معالجة حدث معين لأحد الكائنات إضافة معالج ذات الصلة باستخدام فئة قائمة وقائمة الأسلوب في بيئة Visual Studio .NET أثناء وجودك في رمز عرض.
  • الطريقة الثانية

    يوفر Visual Basic .NET طريقة أخرى لمعالجة الأحداث. يمكنك استخدام جملة AddHandler عبارة RemoveHandler لتتمكن من بدء بشكل حيوي بشكل حيوي إيقاف معالجة الحدث حدث معين.

    ملاحظة إذا كنت تستخدم الكلمة الأساسية WithEvents إنشاء معالجات الأحداث "، قد تتلقى استثناء System.Reflection.TargetInvocationException. لذلك، استخدام الحدث AddHandler إنشاء معالجات الأحداث.

إنشاء عميل Visual Basic .NET التنفيذ الذي يعالج الأحداث PowerPoint

إظهار مجموعات الخطوات التالية كيفية استخدام جملة AddHandler لمعالجة أحداث تطبيق PowerPoint من عميل التنفيذ التي تم تطويرها باستخدام Visual Basic .NET.

لإنشاء مشروع Visual Basic .NET اتبع الخطوات التالية:
  1. البدء في Microsoft Visual Studio .NET 2003.
  2. من القائمة ملف، انقر فوق جديد ثم انقر فوق المشروع.
  3. في القائمة أنواع Project انقر فوق مشاريع Visual Basic. في قائمة قوالب انقر فوق تطبيق Windows.
  4. اسم المشروع PowerPointEvents ثم انقر فوق موافق.

    افتراضياً، يتم إنشاء نموذج المسمى Form1.
لإضافة مراجع إلى مكتبة كائنات Microsoft PowerPoint أو إلى مكتبة كائنات Microsoft Graph اتبع الخطوات التالية:
  1. من القائمة المشروع انقر فوق إضافة مرجع.
  2. ضمن علامة التبويب COM ، انقر فوق أحد الخيارات التالية ثم انقر فوق تحديد:
    • للحصول على Microsoft Office PowerPoint 2007، انقر فوق مكتبة كائنات Microsoft PowerPoint 12.0.
    • للحصول على Microsoft Office PowerPoint 2003، انقر فوق مكتبة كائنات Microsoft PowerPoint 11.0.
  3. ضمن علامة التبويب COM ، انقر فوق أحد الخيارات التالية ثم انقر فوق تحديد:
    • للحصول على Microsoft Graph 12.0 ، انقر فوق مكتبة كائنات Microsoft Graph 12.0.
    • للحصول على Microsoft Graph 11.0 ، انقر فوق مكتبة كائنات Microsoft Graph 11.0.
  4. في مربع الحوار إضافة مراجع ، انقر فوق موافق لقبول التحديدات.
  5. انقر نقراً مزدوجاً فوق النموذج.

    فتح إطار التعليمات البرمجية.
  6. في أعلى الملف Form1.vb بإضافة التعليمة البرمجية التالية:
    	Imports PowerPoint = Microsoft.Office.Interop.PowerPoint	Imports Office = Microsoft.Office.Core	Imports Graph = Microsoft.Office.Interop.Graph
  7. من القائمة عرض، انقر فوق "مصمم".
  8. من القائمة عرض، انقر فوق مربع الأدوات ثم قم بإضافة زر إلى Form1.
  9. انقر نقراً مزدوجاً فوق Button1.

    فتح إطار التعليمات البرمجية في الحدث Button1_Click.
  10. في الإطار "تعليمات برمجية" ، ضع التعليمات البرمجية التالية قبل الحدث Button1_Click:
    	Dim oApp As PowerPoint.Application	Dim oPres As PowerPoint.Presentation
  11. قم بإضافة التعليمات البرمجية التالية إلى الحدث Button1_Click:
    	Const sTemplate = "C:\Program Files\Microsoft Office\Templates\Presentation Designs\Orbit.pot"        ' If the previous template is not available, change the template name to a template name that is on your system.        Const sVideo = "C:\WINDOWS\system32\oobe\images\intro.wmv"        Dim oPresentations As PowerPoint.Presentations        Dim oSlides As PowerPoint.Slides        Dim oSlide As PowerPoint.Slide        Dim oShapes As PowerPoint.Shapes        Dim oShape As PowerPoint.Shape        Dim oMovie As PowerPoint.Shape        Dim oAnimationSettings As PowerPoint.AnimationSettings        Dim oPlaySettings As PowerPoint.PlaySettings        Dim oTextFrame As PowerPoint.TextFrame        Dim oTextRange As PowerPoint.TextRange        Dim oFont As PowerPoint.Font        Dim oOLEFormat As PowerPoint.OLEFormat        Dim oShadow As PowerPoint.ShadowFormat        Dim oForeColor As PowerPoint.ColorFormat        Dim oRange As PowerPoint.SlideRange        Dim oSlideShowTransition As PowerPoint.SlideShowTransition        'Start PowerPoint and then make the PowerPoint window visible but minimized.        oApp = New PowerPoint.Application        'Add event handlers.        AddHandler oApp.SlideShowBegin, AddressOf oApp_SlideShowBegin        AddHandler oApp.SlideShowNextSlide, AddressOf oApp_SlideShowNextSlide        AddHandler oApp.PresentationClose, AddressOf oApp_PresentationClose        oApp.Visible = True        oApp.WindowState = PowerPoint.PpWindowState.ppWindowMinimized        'Create a new presentation that is based on the specified template.        oPresentations = oApp.Presentations        oPres = oPresentations.Open(sTemplate, , , True)        'Build slide 1.        'Add text to the slide, change the font, and then insert or position a         'movie on the first slide.        oSlides = oPres.Slides        oSlide = oSlides.Add(1, PowerPoint.PpSlideLayout.ppLayoutTitleOnly)        oShapes = oSlide.Shapes        oShape = oShapes.Item(1)        oTextFrame = oShape.TextFrame        oTextRange = oTextFrame.TextRange        oTextRange.Text = "My sample presentation"        oFont = oTextRange.Font        oFont.Name = "Comic Sans MS"        oFont.Size = 48        oMovie = oShapes.AddMediaObject(sVideo, 150, 150, 500, 350)        oAnimationSettings = oMovie.AnimationSettings        oPlaySettings = oAnimationSettings.PlaySettings        oPlaySettings.PlayOnEntry = True        oPlaySettings.HideWhileNotPlaying = True        'NAR to release references.        NAR(oPlaySettings)        NAR(oAnimationSettings)        NAR(oMovie)        NAR(oFont)        NAR(oTextRange)        NAR(oTextFrame)        NAR(oShape)        NAR(oShapes)        NAR(oSlide)        NAR(oSlides)        'Build slide 2.        'Add text to the slide title and then format the text. Also, add a chart to the        'slide and then change the chart type to a 3D Column Clustered.        oSlides = oPres.Slides        oSlide = oSlides.Add(2, PowerPoint.PpSlideLayout.ppLayoutTitleOnly)        oShapes = oSlide.Shapes        oShape = oShapes.Item(1)        oTextFrame = oShape.TextFrame        oTextRange = oTextFrame.TextRange        oTextRange.Text = "My chart"        oFont = oTextRange.Font        oFont.Name = "Comic Sans MS"        oFont.Size = 48        Dim oChart As Graph.Chart        oShape = oShapes.AddOLEObject(150, 150, 480, 320, "MSGraph.Chart.8")        oOLEFormat = oShape.OLEFormat        oChart = oOLEFormat.Object        oChart.ChartType = Graph.XlChartType.xl3DColumnClustered        'NAR to release references.        NAR(oChart)        NAR(oOLEFormat)        NAR(oFont)        NAR(oTextRange)        NAR(oTextFrame)        NAR(oShape)        NAR(oShapes)        NAR(oSlide)        NAR(oSlides)        'Build slide 3.        'Add a text effect to the slide and then apply shadows to the text effect.        oSlides = oPres.Slides        oSlide = oSlides.Add(3, PowerPoint.PpSlideLayout.ppLayoutBlank)        oSlide.FollowMasterBackground = False        oShapes = oSlide.Shapes        oShape = oShapes.AddTextEffect(Office.MsoPresetTextEffect.msoTextEffect27, _            "The End", "Impact", 96, False, False, 230, 200)        oShadow = oShape.Shadow        oForeColor = oShadow.ForeColor        oForeColor.SchemeColor = PowerPoint.PpColorSchemeIndex.ppForeground        oShadow.Visible = True        oShadow.OffsetX = 3        oShadow.OffsetY = 3        'NAR to release references.        NAR(oShadow)        NAR(oForeColor)        NAR(oShape)        NAR(oShapes)        NAR(oSlide)        NAR(oSlides)        'Modify the slide show transition settings for all three slides in        'the presentation.        Dim SlideIdx(3) As Integer        SlideIdx(0) = 1        SlideIdx(1) = 2        SlideIdx(2) = 3        oSlides = oPres.Slides        oRange = oSlides.Range(SlideIdx)        oSlideShowTransition = oRange.SlideShowTransition        oSlideShowTransition.AdvanceOnTime = False        oSlideShowTransition.EntryEffect = PowerPoint.PpEntryEffect.ppEffectBoxOut        'Run the slide show in a separate method.        RunSlideShow()        'NAR to release references.        NAR(oSlideShowTransition)        NAR(oRange)        NAR(oSlides)        'Close the presentation without saving changes and then quit PowerPoint.        oPres.Saved = True        oPres.Close()        'NAR the presentation objects.        NAR(oPres)        NAR(oPresentations)        'Remove all event handlers.        RemoveHandler oApp.SlideShowBegin, AddressOf oApp_SlideShowBegin        RemoveHandler oApp.SlideShowNextSlide, AddressOf oApp_SlideShowNextSlide        RemoveHandler oApp.PresentationClose, AddressOf oApp_PresentationClose        'Quit PowerPoint.        oApp.Quit()        NAR(oApp)        GC.Collect()
  12. في الإطار "تعليمات برمجية" ، ضع التعليمات البرمجية التالية أدناه الحدث Button1_Click: oSettings
    	Private Sub RunSlideShow()            Dim oSettings As PowerPoint.SlideShowSettings	    Dim oSlideShowWindows As PowerPoint.SlideShowWindows	    oSettings = oPres.SlideShowSettings	    oSettings.StartingSlide = 1       	    oSettings.EndingSlide = 3            'Run the slide show. Wait for the slide show to finish.            oSettings.Run()            oSlideShowWindows = oApp.SlideShowWindows            On Error Resume Next            Do While oSlideShowWindows.Count >= 1	        System.Windows.Forms.Application.DoEvents()       	    Loop	    NAR(oSlideShowWindows)            NAR(oSettings)	End Sub    	'NAR function to remove reference.   	Private Sub NAR(ByVal o As Object)            Try	        System.Runtime.InteropServices.Marshal.ReleaseComObject(o)            Catch            Finally                o = Nothing            End Try    	End Sub
  13. إضافة معالجات الأحداث التالية أدناه التعليمات البرمجية السابق:
    	'Event Handlers    	Private Sub oApp_SlideShowBegin(ByVal Wn As Microsoft.Office.Interop.PowerPoint.SlideShowWindow)            'Change the position and the size of the slide show window.            Dim oView As PowerPoint.SlideShowView            With Wn                .Height = 325                .Width = 400                .Left = 100                .Activate()            End With           'Start the movie at the first slide.            oView = Wn.View            oView.Next()            NAR(oView)            NAR(Wn)    	End Sub    	Private Sub oApp_SlideShowNextSlide(ByVal Wn As Microsoft.Office.Interop.PowerPoint.SlideShowWindow)            'Change the color and the type of pointer depending on the slide.            Dim Showpos As Integer            Dim oView As PowerPoint.SlideShowView            Dim oColorFormat As PowerPoint.ColorFormat            oView = Wn.View            Showpos = oView.CurrentShowPosition + 1            If Showpos = 3 Then                oColorFormat = oView.PointerColor                oColorFormat.RGB = RGB(255, 0, 0)                oView.PointerType = PowerPoint.PpSlideShowPointerType.ppSlideShowPointerPen            Else                oColorFormat = oView.PointerColor                oColorFormat.RGB = RGB(0, 0, 0)                oView.PointerType = PowerPoint.PpSlideShowPointerType.ppSlideShowPointerArrow            End If            NAR(oColorFormat)            NAR(oView)            NAR(Wn)    	End Sub    	Private Sub oApp_PresentationClose(ByVal Pres As Microsoft.Office.Interop.PowerPoint.Presentation)            'Before you close the presentation, save the presentation as HTML.            Pres.SaveAs("C:\TestEvents.htm", PowerPoint.PpSaveAsFileType.ppSaveAsHTML)            NAR(Pres)    	End Sub

محاولة

  1. اضغط F5 لتشغيل التطبيق.
  2. انقر فوق Button1.

    يبدأ PowerPoint تشغيل عرض الشرائح. لاحظ ما يلي:
    • الشريحة الأولى يبدأ تشغيل فيلم.
    • يتغير نوع مؤشر.
    • تغيير ألوان على شريحة الثاني الذي يحتوي على مخطط.
  3. قم بإغلاق العرض التقديمي.
مراجع
لمزيد من المعلومات، انقر فوق أرقام المقالات التالية لعرضها في "قاعدة المعارف لـ Microsoft:
308330كيفية معالجة الأحداث PowerPoint 2002 باستخدام Visual Basic .NET 2002
254009تحميل العرض التوضيحي الحدث PowerPoint 2000
303717كيفية استخدام التنفيذ التلقائي لإنشاء عرض تقديمي PowerPoint 2002 أو العرض تقديمي لـ Office PowerPoint 2003 باستخدام Visual Basic .NET 2002 أو Visual Basic .NET 2003
823996لم يتم العثور على PIA عند الرجوع إلى مكتبة نوع Office في Visual Studio .NET
اتصال الطاقة نقطة الحدث net VB powerpoint PPT2007

تحذير: تمت ترجمة هذه المقالة تلقائيًا

خصائص

رقم الموضوع: 824021 - آخر مراجعة: 05/24/2007 22:15:42 - المراجعة: 2.1

Microsoft Office PowerPoint 2007, Microsoft Office PowerPoint 2003, Microsoft Visual Basic .NET 2003 Standard Edition

  • kbmt kbexpertiseinter kbhowtomaster kbautomation KB824021 KbMtar
تعليقات