Automatisk lydklipp

December 16  by Eliza

Word-dokumenter kan inneholde ganske mye mer enn tekst. Du kan også inkludere grafikk og multimedia objekter, som lydklipp. Den normale måten at du spiller et lydklipp er å dobbeltklikke på ikonet i dokumentet. Hva hvis du ønsker lydklippet å begynne å spille når du først åpne dokumentet, uten behov for å dobbeltklikke?

Den beste måten å nærme seg dette problem på er gjennom bruk av en makro. Du kan enkelt lage en makro som kjøres automatisk når du åpner et dokument, og makroen kan spille av lydfilen. Følgende er en veldig enkel makro som gjør nettopp det:

Private Sub Document_Open ()
ThisDocument.InlineShapes (1) .Velg
Selection.InlineShapes (1) .OLEFormat.DoVerb VerbIndex: = wdOLEVerbPrimary
End Sub

Makroen forutsetter at lydklippet er den aller første objektet som ble satt inn, inline, i dokumentet. Hvis ikke, må du finne ut av indeksnummeret for klippet, innenfor InlineShapes samling, og bruke den indeksverdi i makroen.

Hjertet av makro bruker DoVerb metoden, som er en generisk måte for å utføre forskjellige handlinger i et OLE objekt (i dette tilfellet, lydfilen). Den VerbIndex parameteren bestemmer handlingen som utføres. I denne bruken, er VerbIndex satt lik wdOLEVerbPrimary, som betyr "den primære handlingen for et OLE-objekt av denne typen." Siden dette er en lydfil, er den primære handlingen for å spille det.

Kanskje en bedre tilnærming er å bruke bokmerket mulighetene i Word til din fordel. Du kan bruke et bokmerke for å identifisere lydklippet du ønsker å spille, og deretter bruke denne informasjonen i makroen til å bestemme hva som spilles. Vurdere følgende makro:

Private Sub Document_Open ()
Selection.GoTo Hva: = wdGoToBookmark, Navn: = "WavSound"
Selection.InlineShapes (1) .OLEFormat.DoVerb VerbIndex: = wdOLEVerbPrimary
End Sub

Denne makroen forutsetter også at lydklippet er plassert inline i dokumentet. Imidlertid bør klippet være bokmerke bruke navnet WavSound. Makroen velger som bokmerke (lydklippet) og spiller det ved hjelp av DoVerb metoden.

Disse metodene fungerer fint hvis du ønsker å spille et lydklipp som ikke er en del av dokumentet. Det kan være lurt å spille inn et lydklipp som ikke er en del av dokumentet. På den måten gjør lydklippet ikonet ikke vises i dokumentet og rotet opp utseendet på dokumentet.

Måten du oppnå dette er å be Windows API for å spille av lyden for deg. Denne metoden fungerer når du vil ha tilgang til en lydfil du vet er allerede på datamaskinen, så lenge systemet har også Windows Media Player installert. Følgende eksempel skal fungere på en Windows XP-system. (Makroen kan eller ikke kan arbeide på en Vista-system, avhengig av hvordan systemet er konfigurert.)

Private Declare Function PlaySound Lib "winmm.dll" _
Alias ​​"PlaySoundA" (ByVal IpszName As String, _
ByVal hModule så lang, ByVal dsFlags As Long) Som Long

Private Sub Document_Open ()
PlaySound "c: \ windows \ media \ tada.wav", ByVal0 &, & H1
End Sub

De Document_Open makroen kjøres når dokumentet åpnes, men det kaller PlaySound funksjon. Denne funksjonen er definert i privat erklæring som et alias for den PlaySoundA metoden i winmm.dll. Denne metoden starter ikke mediespilleren seg selv, og det gjør ikke stikke noe inn i kroppen av dokumentet.

WordTips er din kilde for kostnadseffektiv Microsoft Word trening. (Microsoft Word er den mest populære tekstbehandlingsprogrammet i verden.) Dette tipset (3902) gjelder for Microsoft Word 97, 2000, 2002, og 2003.