HyperLink
Bejelentkezés
E-mail: 
Jelszó: 





Skip Navigation Links
 

Körlevél-varázsló programozása a Microsoft Word 2002-ben


Példaprogram letöltése

8279 bájt

Ebben a példában a Microsoft Word 2002 program körlevél-varázslójának programozásával foglalkozunk. Megnézzük, hogy a varázslót miként érhetjük el, milyen eseményekkel rendelkezik, hogyan tudjuk ablakainak megjelenítését befolyásolni, valamint hogy miként helyezhetünk el a varázslóban egy saját funkciót.

Miután létrehoztunk egy új C# alkalmazást, fel kell vennünk egy hivatkozást a Word programra. Ehhez válasszuk a Project – Add Reference menüpontot. A megjelenő ablakban kattintsunk a COM fülre, a listában válasszuk ki a Microsoft Word 10.0 Object Library-t. Ezután kattintsunk a Select, majd az OK gombra.
A Word eléréséhez deklarálnunk kell egy objektumot.
private Word.ApplicationClass wordApp;
A Form1 Load eseményében csatlakozunk a Word-höz.
wordApp = new Word.ApplicationClass();
A körlevél-varázsló eseményeihez eseménykezelőket rendelünk. Ezt az alábbi formában tehetjük meg.
wordApp.MailMergeAfterMerge += new Word.ApplicationEvents3_MailMergeAfterMergeEventHandler(this.AfterMergeEvent);
Az egyes események függvényeiben programozzuk le, hogy mi történjen akkor, ha az adott esemény létrejön. Ebben a példában naplózzuk az eseményeket.
A körlevél-varázsló megnyitásakor láthatóvá tesszük a Microsoft Word-öt.
wordApp.Visible = true;
Ezután létrehozunk egy új dokumentumot.
wordApp.Documents.Add(ref m, ref m, ref m, ref m);
A körlevél kezelésével foglalkozó MailMerge objektumot a dokumentum MailMerge property-jén keresztül érhetjük el.
A körlevél-varázsló elindítását a ShowWizard metódus meghívásával kérhetjük.
object initialState = 1;
object showIt = true;
wordApp.ActiveDocument.MailMerge.ShowWizard(ref initialState, ref showIt, ref showIt, ref showIt, ref showIt, ref showIt, ref showIt);
A varázsló összesen hat ablakból áll. Mi dönthetjük el, hogy a varázsló mely ablakokat jelenítse meg, valamint hogy melyik ablaktól kezdődjön. Az ablakok sorszámozva vannak, a számozás a következő formában jelenik meg: Lépés: 1/6. Ha nem jelenítjük meg a varázsló összes ablakát, akkor a számozás természetesen módosul.
A ShowWizard függvény első paraméterében kell megadnunk, hogy a varázsló melyik ablakkal induljon. A további hat paraméter az egyes ablakok megjelenítésére vonatkozik. Igaz érték esetén az adott ablak megjelenik, hamis érték esetén kihagyásra kerül.
A varázsló hat ablaka sorrendben a következő:
  • Dokumentumtípus kiválasztása.
  • Az alapul szolgáló dokumentum megadása.
  • Címzettek kiválasztása.
  • A levél megírása.
  • A levelek megtekintése.
  • Az egyesítés befejezése.
Az egyesítés befejezése ablakban lehetőségünk van egy saját opció megjelenítésére is. A megjelenő opció feliratát a ShowSendToCustom property-n keresztül állíthatjuk be.
wordApp.ActiveDocument.MailMerge.ShowSendToCustom = "Saját művelet (Word bezárása)";
A ShowSendToCustom property értékét csak a varázsló elindítása után módosíthatjuk.
Saját opciónk eseménykezelőjét a MailMergeWizardSendToCustom eseményében programozhatjuk le.
A MailMerge objektumhoz a következő események tartoznak:
Esemény Az esemény létrejötte.
MailMergeAfterMerge Akkor jön létre, amikor a levelek egyesítése elkészült.
MailMergeAfterRecordMerge Akkor jön létre, amikor egy levél elkészítése megtörtént.
MailMergeBeforeMerge A levelek egyesítése előtt jön létre.
MailMergeDataSourceLoad Akkor jön létre, amikor a Word betölti az adatforrást.
MailMergeDataSourceValidate Akkor jön létre, amikor a felhasználó a címzettek megadásánál az érvényesítés feliratú gombra kattint.
MailMergeWizardSendToCustom Akkor jön létre, amikor a felhasználó a saját opciót választja ki a varázsló utolsó ablakában.
A Word alkalmazást a Quit metódus meghívásával zárhatjuk be.
wordApp.Quit(ref m, ref m, ref m);

Könyv
Ez a cikk megtalálható ebben a könyvben: C# Software Offline 2003 évkönyv 547. oldal

Felhasználási feltételek
A Software Online szoftverfejlesztői magazin mindegyik cikke, minden megjelent képe, és egyéb publikált anyaga szerzői jog védelme alatt áll! Bármilyen formában történő másodlagos terjesztésük, közzétételük vagy felhasználásuk kizárólag a kiadó előzetes írásbeli engedélyével történhet!

Copyright © 1999-2012 Animare Software Kft. Minden jog fenntartva!
| Készült: Animare Stúdió | Adatvédelem | Kapcsolat |